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
远程登录: