推 MoMoShota: 我想你應該是要用 entrypoint 這個功能? 09/08 11:24
→ sextitanic: 用 supervisor 呢? 09/08 13:17
錯誤logs是這樣
Creating mysql-db ... done
Creating unicorn-go_rx0_1 ... done
Attaching to mysql-db, unicorn-go_rx0_1
mysql-db | [Entrypoint] MySQL Docker Image 5.7.27-1.1.12
rx0_1 | [email protected]
rx0_1 | DEBU[2019-09-08 04:55:52]
(.go/pkg/mod/github.com/spf13/[email protected]/command.go:914)
generate default data.
mysql-db | [Entrypoint] Starting MySQL 5.7.27-1.1.12
rx0_1 | DEBU[2019-09-08 04:55:52]
(.go/src/moony/unicorn-go/cmd/context.go:22)
root:123456@tcp(mysql:3306)/rockman?charset=utf8&parseTime=true&loc=UTC&multiStatements=true
rx0_1 | ERRO[2019-09-08 04:55:52]
(.go/src/moony/unicorn-go/cmd/context.go:22) dial tcp 172.20.0.2:3306:
connect: connection refused
rx0_1 | panic: Database connection failed.
logs看起來rx0_1跟mysql-db是並行啟動
(i.e.當我開始db:reset的時候 mysql還沒啟動好)
然後我又看到這篇文章
https://reurl.cc/Ob1may
不过需要注意的是,
depends_on 不会等到 db 和 redis 容器 ready 再启动,web 容器
仅仅等到 redis 和 db 容器启动就开始启动。具体可参考官网启动顺序了解。
看起來像是依賴問題 所以根據depends_on找到下面文章
https://reurl.cc/yyZAjM
depends_on:
rabbit:
condition: service_healthy
但版本3好像已經不支援了 這邊會跳
depends_on contains an invalid type, it should be a string
目前為止做到這步 看起來我應該是要等到mysql的容器
完全啟動之後再去seed data
應該是卡在相依性這邊(?)
※ 編輯: MOONY135 (123.194.180.20 臺灣), 09/08/2019 13:34:46