一个集装箱即使其他两个在docker工作,也不会退出
所以我有三个容器,用于testing目的:1 dev-server 2 selenium-headless 3 unit。
他们都运行并行,它工作正常。 唯一的问题是,当另外两个hav退出并完成运行testing时,我的1 dev-server容器不会退出/停止。 当然,如果其他容器之一退出代码1,我也希望它退出。
在另外两个容器退出之后,我应该怎么做并添加它以退出?
我的docker-compose文件看起来像这样。 :
version: "3" services: dev-server: build: . tty: true hostname: yeti-ui container_name: yeti-ui ports: - 127.0.0.01:8080:8080 - 35729:35729 environment: - "SKIP_DOCS=0" - "SCHEME=http" - "NODE_ENV=stage" entrypoint: npm command: run dev-server headless-chrome: build: context: . dockerfile: ./Dockerfile-headless-chrome cap_add: - SYS_ADMIN network_mode: "host" unit-test: build: . entrypoint: npm command: test
您可以使用:
docker-compose up --abort-on-container-exit
如果其中一个容器停止,将会停止所有容器。 见文件 。
我think你的两个select是:
- 使用
docker-compose run
分别运行服务并检查退出代码。 - 使用
docker-compose up
然后parsingdocker-compose ps
的输出。
看看这个相关的答案