検索

ホームページ  >  に質問  >  本文

docker容器启动时里面的lnmp服务器如何也跟着启动

docker容器启动时里面的lnmp服务器如何也跟着启动?
启动后怎么保证容器不自动关闭?

曾经蜡笔没有小新曾经蜡笔没有小新2771日前919

全員に返信(4)返信します

  • 習慣沉默

    習慣沉默2017-04-27 09:04:16

    Docker は 1 つのコンテナーと 1 つのサービスを推奨します。nginx、mysql、PHP-FPM (PHP) を異なるコンテナーに分割した後、Docker の再起動メカニズムを使用してサービスの可用性を確保できます。この方法 docker-node.js

    返事
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-04-27 09:04:16

    docker の原理は、docker run によって実行されるコンテナーは本質的に単なるプロセスであり、バックエンドがさまざまなシステムコールを呼び出してそれを分離し、仮想マシンのように見せることです。

    Docker run 実行中のプロセスとそのサブプロセスは、メインプロセスが停止しない限り、Docker コンテナはハングしません。

    これに基づいて、supervisord をメインプロセスとみなして、php と nginx を一緒に起動できます。 php および nginx プロセスは、supervisord によって管理されます。


    既成の dockerfile。

    スーパーバイザーdプロセス管理+nginx+php7

    php+nginx+supervisord dockerfile:
    https://github.com/qiukeren/d...

    まあ、salt-minion も同時にインストールされますので、必要ない場合は自分でカスタマイズしてください。

    プロジェクトアドレス:

    https://github.com/qiukeren/d...、bash build.shを直接実行してコンテナを生成します。

    返事
    0
  • 巴扎黑

    巴扎黑2017-04-27 09:04:16

    上記の答えでは問題は解決しませんでした

    投稿者の悩みはこの記事で解決できます

    https://javablog.net/page/250...

    1 つのドックで複数のプロセスを実行する必要がある場合、誰もあなたを止めることはできません。お気軽に

    返事
    0
  • 淡淡烟草味

    淡淡烟草味2017-04-27 09:04:16

    コンテナーの開始後に lnmp も開始されていることを確認してください。 nginx mysql php がフォアグラウンドで開始されていることを確認してください。それ以外の場合、コンテナーはこれらのプロセスがコンテナーから離れてバックグラウンドで開始されたことを検出し、コンテナー自体が自動的に開始されます。近い。 lnmp のコンテナ化については、https://www.centos.bz/2017/02... を参照してください。

    返事
    0
  • キャンセル返事