設定ファイルが変更されたときに、たとえば 'nginx'などのサービスを再起動しますか?たとえば、Puppetにnginx cfgファイルをいくつか作成し、それらをnginxコンテナにマウントされたボリュームに配置します。現時点では私はドッカー・ジェンを使用していますが、他の方法はありますか?設定が変更されたときにDockerサービスを再起動する
答えて
ドッカーコンテナは一時的であることを意味します。また、Dockerコンテナは、プロセスPID1をコンテナ内に作成することによって、実行中のプロセスを「コンテナ化」します。つまり、従来のinitシステムはありません。実際、initシステムは全くありません。そしてあなたが知っているように、あなたのコンテナ内のプロセスが終了すると、コンテナが死ぬ。一時的なコンテナを実装するという観点から問題に近づけば、サービスを再開することはありません。変更した構成を使用して新しいコンテナを作成します。 thaJeztahのコメントで述べたように、コンテナをdocker restart nginx
に設定すると、設定を更新することができます。
今、この四角いペグを丸い穴にハンマーで留める方法がいくつかあります。あなたはそれより優れています...しかし、あなたはすでにdocker-gen
があなたを近くにお迎えすることに気付きました。同様に、jwilder/nginx-proxy
imageがどのように機能しているかを知りたければ、実際にドッカーゲンがどのように機能するかを知ることができます。しかし既にあなたはすでにそれを見たことがあります。あなたはすでにdocker-gen
を使っているからです。
他のオプションは、supervisord
のようなもので靴ひねりをすることです。オンラインで行うことについてはplenty of informationです。数多くの人々がこれを過去に行ってきました。そして、それがなぜ問題を解決するのか理解できない他の人々のために、supervisordはあなたのコンテナのPID 1になり、子供のnginxプロセスを "普通のように"再開できますが、あなたのコンテナを殺すことはありません。
- 1. アプリを再起動したときに変更されたメニューアイコンを永続的に設定する方法
- 2. WiX - インストールされた製品の変更後にサービスを再起動する
- 3. ホストフォルダの内容が変更されたときのDockerコンテナの自動再起動
- 4. Dockerを起動できない、再起動するたびに新しいネットワークアダプタが作成される
- 5. イメージをポーラー(?)で変更したときにDockerコンテナーを再起動する(自動)
- 6. 変数が設定されたときに変数値が変更される
- 7. jQueryでsetIntervalを再起動すると、ユーザーがカウンタを再起動したときに表示されます。
- 8. ファイルが変更されたときにASP.NETを再起動する方法を教えてください。
- 9. 変更されたときにmod_fcgidで実行されているPerlスクリプトを再起動するには?
- 10. Docker Containersが自動的にクラッシュするときに再起動する
- 11. Visual Studioを再起動するたびにapplicationhost.configが変更されます
- 12. プライバシー設定の変更を検出したときにアプリを再起動する
- 13. 設定ファイルが変更されたとき、quartz.netはジョブを再設定できますか?
- 14. サービスが複数回起動されたときに何が起こるか
- 15. エントリポイントの定義時にDockerコンテナが再起動する
- 16. サービスを再起動すると、インパラテーブルが起動しない
- 17. Dockerホストの再起動後にボリュームがマウントされない
- 18. Windowsでdocker-composeを再実行するとネットワークの設定が変更される
- 19. アンドロイドが再起動すると、サービスは再び呼び出されますか?
- 20. jspが変更されたときにtomcatを再起動する必要はありません
- 21. DockerでApacheを再起動
- 22. サイドメニューから再起動したときにIonicビューが更新されない
- 23. $ theresが変更されたときにサービスを見る
- 24. 再起動時にサービスが最初に開始されます
- 25. debian postinstスクリプトでサービスが再起動されました。
- 26. WCFデュプレックスサービス。サービスの再起動時にクライアントがドロップされる
- 27. 外部APIからのコンテンツが変更されたときにキャッシュされたビューを更新するノードを再起動する必要があります
- 28. Grails - 外部化された設定再起動
- 29. 固定オブジェクトがカスタムオブジェクトで作成されたときに再起動しない
- 30. PCが自動的に再起動するたびに設定をリセットする
nginxを再起動するために 'supervisord'を使う必要はありません。もしあなたが 'nginx'を**コンテナにすることを考えれば; 'docker restart my-nginx-container'はnginx-containerを再起動し、nginxを起動します。ボリューム内の設定が変更された場合は、設定を再ロードします。 – thaJeztah
新しい設定データがマウントされ、ボリュームから読み込まれた場合は、コンテナを再起動してください。 – L0j1k