centos76-mysql80 镜像制作

Dockerfile 文件内容

FROM centos

RUN yum localinstall -y https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm \
    && yum install -y mysql-community-server \
    && yum install -y initscripts \
    && yum clean all

CMD ["/usr/sbin/init"]

由 Dockerfile 文件构建镜像

docker build -t centos76-mysql80:latest .

保存镜像到文件

docker save > centos76-mysql80.tar centos76-mysql80:latest

启动容器 添加端口映射

docker run --privileged=true --name "centos76-mysql80" -d -i -t -p 9980:3306 centos76-mysql80 /usr/sbin/init

进入容器

docker exec -i -t centos76-mysql80 /bin/bash

启动 mysql 服务

service mysqld start

修改密码 开启远程连接

yourpassword 改为自己的密码 密码强度要符合要求 须同时包含 大小写字母 数字 符号

mysqlpass=`grep 'temporary password' /var/log/mysqld.log`
mysql -uroot -p${mysqlpass##* } --connect-expired-password -e"ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword';use mysql;UPDATE user SET HOST = '%' WHERE USER = 'root';flush privileges;"

把自己修改后的容器 提交为镜像

docker commit -a "moonnow" -m "password:yourpassword" centos76-mysql80 moonnow/centos76-mysql80:latest

保存镜像到文件

docker save > moonnowcentos76-mysql80.tar moonnow/centos76-mysql80:latest

启动容器 添加端口映射 自己修改后的镜像 不需要启动 mysql 服务 启动容器后数据库就可以用了

docker run --privileged=true --name "moonnowcentos76-mysql80" -d -i -t -p 19980:3306 moonnow/centos76-mysql80 /usr/sbin/init

进入容器

docker exec -i -t moonnowcentos76-mysql80 /bin/bash

你可能感兴趣的:(centos76-mysql80 镜像制作)