docker-compose up正在启动容器并立即停止它们

我正在尝试使用docker-compose构建服务,但是当compose脚本结束时,使用docker-compose启动的容器会立即停止.但是当我使用docker run创建容器时,它正在运行相同的服务映像.

这是我的撰写脚本:

version: '2.1'

networks:
 composetestnetwork:
  driver: bridge
   ipam:
    driver: default
    config:
     - subnet: 172.19.0.0/16
       gateway: 172.19.0.1

services:
 composetestdb:
  build:
   context: .
   dockerfile: Dockerfile-testdb
  cap_add:
   - ALL
  container_name: my-db-compose-container
  labels:
   db.description: "This is a test db"
  volumes:
   - c:/Users:/data
  networks:
   composetestnetwork:
    ipv4_address: 172.19.0.5
  ports:
   - "3306:3306"
  command: 'bash'

可以做些什么来解决这个问题.

最佳答案
如果您使用bash作为命令,但没有终端,它将立即退出.这是因为当bash启动时,如果没有连接终端,并且它没有要执行的脚本或其他命令,则它无关,所以它退出(按设计).

您可以使用其他命令,也可以使用tty:true附加终端作为此服务定义的一部分.

services:
  composetestdb:
    tty: true
    ...

转载注明原文:docker-compose up正在启动容器并立即停止它们 - 代码日志