我正在使用 Docker v. 20.10.12。我已經在我的 docker-compose 檔案中設定了這個容器……
web:
restart: always
build: ./my-web
ports:
- "3000:3000"
expose:
- '3000'
env_file: ./my-web/.docker_env
command: rm -f /app/tmp/pids/*.pid && foreman start -f Procfile.hot
volumes:
- ./my-web/:/app
depends_on:
- db
當我開始使用“docker-compose up”時,上面的容器總是顯示這個訊息
my-web-1 exited with code 0
在此之前沒有其他資訊。但是,如果我將命令更改為
command: tail -F anything
然后登錄docker容器,就可以運行了
rm -f /app/tmp/pids/*.pid && foreman start -f Procfile.hot
很好,沒有錯誤。作為啟動 Docker 容器的一部分,我將如何運行它而無需從上面執行手動步驟?
uj5u.com熱心網友回復:
你可以做
command: /bin/sh -c "rm -f /app/tmp/pids/*.pid && foreman start -f Procfile.hot"
uj5u.com熱心網友回復:
嘗試將所有命令放在外部 sh 檔案中。在 docker-compose 中使用
命令:/bin/sh -c "yourshfile.sh"
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/422143.html
標籤:
上一篇:Bash:動態創建環境變數
