为什么使用docker-compose创建mysql镜像,运行成功后,又会马上Exist(1)

来源:2-11 docker入门

FrankyShyShy

2020-01-09 21:46:30

用docker-compose创建mysql镜像,运行成功后,又会马上Exist(1),要删除dokcer下的镜像,然后再次执行docker-compose up -d,才能运行成功,但是又马上挂了,直接使用dokcer命令传进的mysql镜像不会出现这个问题(docker run --name shy-mysql -e=MYSQL_ROOT_PASSWORD=123456 -p 28001:3306 -d mysql)。如下图

http://img.mukewang.com/climg/5e172e23091118f713200746.jpg

这是docker和docker-compose.的版本

http://img.mukewang.com/climg/5e172e7f094e14c608300154.jpg

这是docker-compose.yml的内容。

version: '3.1'

services:

  mysql1:

    image: mysql

    environment:

      - MYSQL_ROOT_PASSWORD=123456

    ports:

      - 28002:3306

  mysql2:

    image: mysql

    environment:

      - MYSQL_ROOT_PASSWORD=123456

    ports:

      - 28003:3306


写回答

1回答

FrankyShyShy

提问者

2020-01-10

这个mysql错误日志在哪里,找了半天没找到

http://img.mukewang.com/climg/5e17f4aa09efc30722520660.jpg

0
hrian
h 这个上面是没有Mysql日志的目录的,可以映射出来,或者使用mysql.cnf的配置文件,指定一个mysql的日志的位置。首先,你要确定你在创建之前,端口有没有被占用;然后,镜像是不是完整的;最后,就是创建了之后,参考这个哥们的方案把Log目录映射出来:https://stackoverflow.com/questions/39708213/enable-logging-in-docker-mysql-container
h020-01-11
共1条回复

0 学习 · 1842 问题

查看课程