紫郢青索

知之者不如好之者,好之者不如乐之者

用户工具

站点工具


编写Dockerfile入门实例:创建MySQL镜像和容器

制作MySQL镜像

编写Dockerfile

Dockerfile
    FROM centos:centos6  
 
    RUN yum install -y mysql-server mysql  
 
    RUN /etc/init.d/mysqld start &&\  
        mysql -e "grant all privileges on *.* to 'root'@'%' identified by 'root';"&&\  
        mysql -e "grant all privileges on *.* to 'root'@'localhost' identified by 'root';"&&\  
        mysql -u root -proot -e "show databases;"  
 
    EXPOSE 3306  
 
    CMD ["/usr/bin/mysqld_safe"]

编译成镜像

# usage:
# 在Dockerfile文件所在目录,执行如下命令,创建镜像
docker build --tag mysql_server ./
# 查看镜像列表
docker images

从镜像运行容器

# mysqlserver : (要运行的容器名),3306:3306(本机端口:容器暴露的端口),mysql_server  (镜像名称)
docker run --name=mysqlserver -d -p 3306:3306 mysql_server  
# 查看运行的容器
docker ps
# 查看所有容器
docker ps -a
# 进入容器,并运行容器中的bash
docker exec -it mysqlserver bash
# 宿主机执行
mysql -h <宿主机器> -u root -proot
# 启动容器mysqlserver 
docker container start mysqlserver 
# 停止容器mysqlserver 
docker container stop mysqlserver 
# 删除容器mysqlserver 
docker containder rm mysqlserver