Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bash-installでdockerを用いてインストールした際、サーバーが立ち上がらない #13925

Closed
1 task
tai-cha opened this issue Jun 1, 2024 · 11 comments · Fixed by #13926
Closed
1 task
Labels
🐛Bug Unexpected behavior 🔥high priority

Comments

@tai-cha
Copy link
Member

tai-cha commented Jun 1, 2024

💡 Summary

misskeyのdockerイメージを立ち上げようとすると、unhealtyのままになる

(おそらく原因がbash-installではなくDockerfileにあるのでここにissueを上げる)

pnpm@9.0.6を使うことになった影響でpnpmを呼び出そうとすると対話式で9.0.6をインストールしようとするのが原因?

🥰 Expected Behavior

healthyになってほしい

🤬 Actual Behavior

unhealthyとなって立ち上がらない

docker logs -t ${container id}した結果はこう

Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-9.0.6.tgz.

image

画像の状態で静止して立ち上がらない

📝 Steps to Reproduce

  1. bash-installの手順に沿ってdocker環境を選択してMisskeyサーバーを立ち上げる
  2. 起動しない

💻 Frontend Environment

* Model and OS of the device(s):
* Browser:
* Server URL:
* Misskey:

🛰 Backend Environment (for server admin)

* Installation Method or Hosting Service: bash-install v3 (docker) 
6db958e
* Misskey: 2024.5.0 (docker-hub misskey/misskey:latest on 2024/06/01 19:31 JST)
* Node:
* PostgreSQL:
* Redis:
* OS and Architecture: Ubuntu 22.04

Do you want to address this bug yourself?

  • Yes, I will patch the bug myself and send a pull request
@tai-cha tai-cha added the ⚠️bug? This might be a bug label Jun 1, 2024
@tai-cha
Copy link
Member Author

tai-cha commented Jun 1, 2024

上に書いたログ部分は自分のサーバーで起こったログで添付画像は再現性チェックのために1から立ち上げたやつ

@tai-cha tai-cha changed the title bash-installでdockerを用いてインストールした際、サーバーが立ち上がらないことがある bash-installでdockerを用いてインストールした際、サーバーが立ち上がらない Jun 1, 2024
@tai-cha
Copy link
Member Author

tai-cha commented Jun 1, 2024

bash-installのupdate.ubuntu.shでも同様に起こるがおそらくDockerfileのほうを何とかする必要がある

@tai-cha
Copy link
Member Author

tai-cha commented Jun 1, 2024

一時的な対応としてdocker exec -it /bin/bashとかでコンテナに入ってあげて

pnpm install
pnpm migrate

をした後にコンテナ再起動したら立ち上がりはした
でもコンテナ消したらおそらくもう一度やらなければいけない

@tai-cha
Copy link
Member Author

tai-cha commented Jun 1, 2024

多分起動用にpnpm run migrateandstartを呼ぶけどそもそもpnpm入ってないよってなってる

@tai-cha
Copy link
Member Author

tai-cha commented Jun 1, 2024

Corepackで対話式ではなくpackageManagerに合わせたpnpmをインストールしておけるのかしら

@anatawa12
Copy link
Member

corepack installっぽいです

@tai-cha
Copy link
Member Author

tai-cha commented Jun 1, 2024

Dockerfileに書いて早めに新バージョンを出す必要がありそう

@tai-cha tai-cha added 🐛Bug Unexpected behavior 🔥high priority and removed ⚠️bug? This might be a bug labels Jun 1, 2024
@anatawa12
Copy link
Member

anatawa12 commented Jun 1, 2024

今手元でもう少し試した感じ、stdinがない/consoleでない場合には止まらずに勝手にCorepackはダウンロードするようで、docker run --rm misskey/misskey:2024.5.0した感じ止まることはなかったのでdocker containerのネットの設定等に依存する可能性もあるかもしれない?

$ docker run --rm misskey/misskey:2024.5.0
Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-9.0.6.tgz.

> misskey@2024.5.0 migrateandstart /misskey
> pnpm migrate && pnpm start


> misskey@2024.5.0 migrate /misskey
> cd packages/backend && pnpm migrate


> backend@ migrate /misskey/packages/backend
> pnpm typeorm migration:run -d ormconfig.js

Error during migration run:
Error: Unable to open file: "/misskey/packages/backend/ormconfig.js". ENOENT: no such file or directory, open '/misskey/.config/default.yml'
    at CommandUtils.loadDataSource (/misskey/node_modules/.pnpm/typeorm@0.3.20_ioredis@5.4.1_pg@8.11.5/node_modules/typeorm/commands/CommandUtils.js:22:19)
    at async Object.handler (/misskey/node_modules/.pnpm/typeorm@0.3.20_ioredis@5.4.1_pg@8.11.5/node_modules/typeorm/commands/MigrationRunCommand.js:40:26)
 ELIFECYCLE  Command failed with exit code 1.
 ELIFECYCLE  Command failed with exit code 1.
 ELIFECYCLE  Command failed with exit code 1.

ビルド時にダウンロードしたほうがいいことには変わりないと思いますが。

@anatawa12
Copy link
Member

anatawa12 commented Jun 1, 2024

https://pnpm.io/ja/next/docker#example-2-build-multiple-docker-images-in-a-monorepo

これとか見るとcorepack installしてなかったりするのでdockerfile側の問題かは少し怪しいところがあるかもしれない?

Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-9.0.6.tgz.

で止まるのの再現例他のところからもほしいきがします

EDIT

Do you want to continue? [Y/n]

があった場合はインタラクティブが有効であることになり、これはcorepackがstdinの認知を行っていそう

@tai-cha
Copy link
Member Author

tai-cha commented Jun 1, 2024

少なくともbash-install v3の新規インストール(ConoHa上Ubuntu22.04)とupdate.ubuntu.sh(vultr上Ubuntu22.04)ではどちらも再現した

@tai-cha
Copy link
Member Author

tai-cha commented Jun 1, 2024

ちなみにこれupdate deps前は起きていないので謎(pnpmが8の時は起きていない)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛Bug Unexpected behavior 🔥high priority
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants