How I could restart the web server in docker

AI-generated summary

The discussion revolves around restarting the web server in Docker. berniegao initially asked if there’s a way to restart the web server similar to reloading config files in a manual Rails server installation. watchmanmonitor suggested using ./launcher stop app and ./launcher start app, but berniegao clarified that this method restarts the entire Docker container.

sam then provided the correct method: ./launcher enter app followed by sv restart unicorn. Jared_Smith1 asked if exiting the app is necessary after this step.

The conversation also touched on troubleshooting issues, such as SpaceMonkey encountering an error when trying to run ./launcher enter app, which Stephen helped resolve.

Additionally, trusktr asked if there’s a UI button to restart the server, and jomaxro explained that there isn’t one. trusktr suggested that a UI button for rebuilding would be convenient.

jomaxro clarified that most changes to the app.yml require a rebuild, which cannot be triggered from the UI. Stephen added that some settings, such as SMTP, can be updated and picked up immediately by running ./launcher destroy app and ./launcher start app, while others require a rebuild.

by manual installation, I could cease the rails server to reload the config files. Is there something like the rails server within docker?

@sam

This seems to work for me:

doing so will restart the entire docker container. what I trying to do is to restart the web server without touch the container, such as using “rails server” and then stop it without utilizing docker.

why are you trying to do this, not following at all. Anyway here you go.

cd /var/discourse 
./launcher enter app
sv restart unicorn 

should we exit app after this step? I’m so new to this if it wasn’t obvious

I have discourse installed via docker. After upgrading yesterday my discourse has been down. I am trying to run ./launcher enter app
from
/var/www/discourse/
I am getting the error ./launcher: No such file or directory Is there way for me to search the correct directory for this command?

/var/www/discourse doesn’t exist outside the app, if you can see that path you’re already inside discourse.

Type exit - does that end the ssh connection, or bring you back to /var/discourse?

UIからサーバーを再起動するボタンはありますか?新しいバージョンが公開されたときにアップグレードするボタンはありますが、これは再起動を行うものだと思います。ただ、再起動専用のボタンは見当たりません。

いいえ、ありません。なぜ Web サーバーを再起動する必要があるのですか?どのような問題を解決しようとしているのでしょうか?

サーバーを再起動して、app.ymlの変更が反映されるか確認したかったのですが、再ビルドも必要のようです。管理画面のアップグレードセクション付近に、そのためのUIボタンがあると便利かもしれません。

app.yml の変更のほとんどは、再構築を必要とします。再構築は UI からトリガーすることはできず、docket コンテナの外からサーバー自体に接続する必要があります。

SMTP などの設定は yml で更新でき、以下のコマンドで即座に反映されます:

./launcher destroy app
./launcher start app

一方、プラグインを含むその他の変更には再構築が必要です。