我试图用-v
国旗,但容器的状态变为Exited (0) 1
映射本地目录容器/home/ubuntu/data
到/var/lib/mysql
文件夹。但是,如果我根本不使用-v
标志,则容器是Up
,但这不是我想要的。可能是什么原因?我看到volume mount
行在与工作示例相反的事件日志中缺失。与-v标志泊坞窗运行命令使容器在已退出状态
$ docker -v
Docker version 17.09.0-ce, build afdb6d4
Dockerfile
FROM ubuntu:16.04
RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y mysql-server \
&& sed -i "s/127.0.0.1/0.0.0.0/g" /etc/mysql/mysql.conf.d/mysqld.cnf \
&& mkdir /var/run/mysqld \
&& chown -R mysql:mysql /var/run/mysqld
VOLUME ["/var/lib/mysql"]
EXPOSE 3306
CMD ["mysqld_safe"]
这是不工作。
$ docker run -i -t -d -v /home/ubuntu/data:/var/lib/mysql --name mysql_container mysql_image
事件日志。
2017-11-... container create 08b44c094... (image=mysql_image, name=mysql_container)
2017-11-... network connect 62bb211934... (container=08b44c094..., name=bridge, type=bridge)
2017-11-... container start 08b44c094... (image=mysql_image, name=mysql_container)
2017-11-... container die 08b44c094... (exitCode=0, image=mysql_image, name=mysql_container)
2017-11-... network disconnect 62bb211934... (container=08b44c094..., name=bridge, type=bridge)
集装箱日志。
$ docker logs -t mysql_container
2017-11-... mysqld_safe Logging to syslog.
2017-11-... mysqld_safe Logging to '/var/log/mysql/error.log'.
2017-11-... mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
此作品,未经-v
$ docker run -i -t -d --name mysql_container mysql_image
事件日志。
2017-11-... container create 84993141... (image=mysql_image, name=mysql_container)
2017-11-... network connect 62bb2119... (container=84993141..., name=bridge, type=bridge)
2017-11-... volume mount 8c36b53d33... (container=84993141...7, destination=/var/lib/mysql, driver=local, propagation=, read/write=true)
2017-11-... container start 84993141... (image=mysql_image, name=mysql_container)
集装箱日志。
$ docker logs -t mysql_container
2017-11-... mysqld_safe Logging to syslog.
2017-11-... mysqld_safe Logging to '/var/log/mysql/error.log'.
2017-11-... mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
2017-11-... mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
为什么不使用mysql容器? https://hub.docker.com/_/mysql/ – JazZ
因为我正在尝试学习的东西,因为我在这个阶段是新手。 – BentCoder