2016-03-18 6 views
0

私は実質的にLAMPスタックであるドッカーコンテナを持っています。私はスーパーバイザを使ってプロセスを管理しています。スタートアップスクリプトでDockerを実行していて、コンポーザーが実行されない

コンテナの起動時にbashスクリプトを実行できますが、コンポーザーを実行するスクリプトを取得できません。

私の簡単なスクリプト

#!/bin/bash 

git clone https://github.com/[..project..].git /var/www/ 
wait 

composer update -d /var/www/ 
wait 

# Just here to test if we make it this far... 
touch /var/www/test 

exit 

、これが正常にリポジトリをクローンして作曲を実行している以上のテストファイルが、スキップを触れる

[program:deploy] 
command=bash deploy.sh 
directory=/usr/local/bin/ 
user=root 
autostart=true 
autorestart=false 
environment=PATH="/usr/bin" 
redirect_stderr=true 

を、それを実行するための責任があるsupervisord.confからセクション。コンテナ内でシェルを開くと、スクリプトを手動で正常に実行できます。

これを解決する方法についてのアドバイスはありますか?

+0

では、スクリプトがsupervisordから実行されたときに問題が作曲を見つけることができないようです.... –

答えて

0

問題は私のスーパーバイザ設定でした。

正しい設定が

[program:deploy] 
command=bash /usr/local/bin/deploy.sh 
autostart=true 
autorestart=false 
redirect_stderr=true 
stdout_logfile=/var/log/composer/run.log 
関連する問題