Dockerfile构建(利用centos6镜像构建mysql镜像)

3. (简答题) 编写Dockerfile制作mysql镜像,生成镜像名为my_build:mysql,具体要求如下: (1)基于镜像centos:7 (2)开放端口3306 (3)设置root密码为123456

创建目录并进入目录:

mkdir mysql1 

cd mysql1

编辑文件:

vim mysql_file

写入内容:

FROM guyton/centos6

#RUN yum install -y wget

#RUN wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

#RUN yum clean all&&yum makecache

#更换yum 源

RUN sed -i "s|enabled=1|enabled=0|g" /etc/yum/pluginconf.d/fastestmirror.conf && 

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup && 

curl -o /etc/yum.repos.d/CentOS-Base.repo https://www.xmpan.com/Centos-6-Vault-Aliyun.repo && 

yum clean all && yum makecache

RUN yum install -y mysql mysql-devel mysql-server

#开启mysqld服务,并进行授权

RUN /etc/init.d/mysqld start && 

mysql -e "grant all privileges on *.* to root@% identified by 123456;"&&

mysql -e "SET PASSWORD FOR root@localhost = PASSWORD(123456)"

#开启3306端口

EXPOSE 3306

#运行初始化脚本mysqld_safe

CMD ["mysqld_safe"]

文件转镜像:

docker build -f ./mysql_file .

创建容器并启动容器 -P随机分配端口:

docker run -it -P d798418a7c76 /bin/bash

开启mysql:

service mysqld start

进入mysql 密码123456:

mysql -u root -p123456

查看随机端口:

docker ps -a

远程登录:

经验分享 程序员 微信小程序 职场和发展