こんばんは、エンジニアの眠れない夜です。
DockerComposeでCommandを複数個実行したけどどうやって書けばいいの??
ということで調べてみました。
1行で書きたいときは
command: bash -c "python manage.py migrate && python manage.py runserver 0.0.0.0:8000"
1行ずつ行を分けて書きたいときは
command: >
bash -c "python manage.py migrate &&
python manage.py runserver 0.0.0.0:8000"
と、こんな感じで書きます。
コマンドを複数行で実行する時のポイント
bash -c "コマンド1&& コマンド2"
と書くことです。””で囲ってそれをbash -c
で実行するということですね。
command: >
bash -c "python manage.py migrate &&
python manage.py runserver 0.0.0.0:8000"
複数行に分けて書くときはcommand: の後に>
を、お忘れなく!
コマンドを複数行に分けたときのdocker-composeファイルの例
.ymlの全体像が見えなくてよくわからん!という方はこちら。(command:の部分を参考にしてみてください。)
python:
image: python:3
container_name: 'python'
links:
- selenium-hub:hub
command: >
bash -c 'pip install --upgrade pip &&
pip install selenium &&
tail -f /dev/null'
コメントを残す