2017-01-21 46 views
1

我有一個簡單的Docker鏡像,它使用虛擬laravel php應用程序在ubuntu上構建。 我使用supervisord來啓動nginx和php-fpm。 到目前爲止,一切正常,在我的本地機器或Docker可執行文件存在的任何地方都可以正常工作。如何正確部署與supervisord的Docker容器到Jelastic

我想在Jelastic環境中運行相同的圖像,但我發現supervisord錯誤:

2017-01-21 14:34:30,283 INFO exited: cron (exit status 1; not expected) 
2017-01-21 14:34:30,333 INFO exited: fpm (exit status 78; not expected) 
2017-01-21 14:34:32,336 INFO spawned: 'cron' with pid 1216 
2017-01-21 14:34:32,338 INFO spawned: 'fpm' with pid 1217 
2017-01-21 14:34:32,341 INFO exited: cron (exit status 1; not expected) 
2017-01-21 14:34:32,386 INFO exited: fpm (exit status 78; not expected) 

我已經聯繫支持,他們告訴我,cron和PHP-FPM已經運行,因爲systemd,所以他們登錄到我的節點,修正了一些東西,現在一切都在運行。

我想知道這是如何與文檔中的任何地方的「Native Docker™©support」™標語一致。

無論如何,我已經設置了新的示例應用程序進行支持調查(圖片 - https://hub.docker.com/r/rozhok/jelastic-laravel-docker/來源 - https://github.com/rozhok/jelastic-laravel-docker),試圖部署它,一切工作都很好突然。

所以我的問題是:

  1. 如何避免supervisord和systemd衝突部署到Jelastic時。記住,我想爲我的所有環境都有相同的圖像,而且我不想爲Jelastic準備「特殊」圖像。

  2. 我們應該瞭解哪些其他警告?也許Docker的支持應該多描述一下。

回答

2

看來你只需要一個額外的行添加到您的Dockerfile: RUN systemctl禁用PHP-FPM 會從你的systemd進程正在催生禁用PHP-FPM,你的過程將是無疑是由主管開始的,並且會使鏡像與本地計算機上運行的Jelastic和Docker主機兼容。

相關問題