【问题标题】:Mysql Exited on Docker ContainerMysql 在 Docker 容器上退出
【发布时间】:2017-05-20 19:14:36
【问题描述】:

我想用 Docker 在 MacOS 上做一个 web 开发平台。我安装了 nginx 和 php7-fpm 容器,它们正在运行并相互通信。但是安装mysql容器后,mysql容器退出了。我不知道它为什么退出。

这是 docker ps -a 输出:

2955d2d5c392        nginx               "/sbin/my_init"          38 seconds ago      Up 36 seconds               0.0.0.0:8080->80/tcp   dockertutorial_web_1
ec3c16795f05        php:7-fpm           "docker-php-entrypoin"   38 seconds ago      Up 37 seconds               9000/tcp               dockertutorial_php_1
835e91ba927a        mysql:latest        "docker-entrypoint.sh"   38 seconds ago      Exited (0) 37 seconds ago                          dockertutorial_mysql_1

如您所见,mysql 已退出。

这是我的 docker-compose.yml 文件:

web:
  image: nginx
  ports:
    - "8080:80"
  volumes:
    - ./src/public:/var/www/public
    - ./src/vhost.conf:/etc/nginx/sites-enabled/vhost.conf
  links:
    - php


php:
    image: php:7-fpm
    volumes:
      - ./src/public:/var/www/public
    links:
      - mysql

mysql:
  image: mysql:latest
  ports:
    - "3306:3306"
  volumes:
   - /var/lib/mysql
  command: "true"
  environment:
        MYSQL_ROOT_PASSWORD: secret
        MYSQL_DATABASE: project
        MYSQL_USER: project
        MYSQL_PASSWORD: project

有什么解决办法吗?

【问题讨论】:

    标签: php mysql nginx docker docker-compose


    【解决方案1】:

    您将使用true 覆盖commandMySQL 图像,而不是mysqld

    docker-compose.ymlmysql 服务中删除command: "true",它将启动mysqld

    请参阅此 Dockerfile 以供参考。

    https://github.com/docker-library/mysql/blob/c207cc19a272a6bfe1916c964ed8df47f18479e7/5.7/Dockerfile#L63

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-26
      • 2019-07-30
      • 2022-01-25
      • 2022-08-24
      • 2015-04-30
      • 2019-02-09
      相关资源
      最近更新 更多