1、检查内核版本 必须在3.0以上 uname -r [root@root /]# uname -r 3.10.0-862.el7.x86_64 2、安装docker yum install docker 3、输入y确认安装 4、启动docker systemctl start docker 查看docker版本 docker -v 5、开机启动 systemctl enable docker
docker search xxx(docker search mysql) 搜索镜像 docker pull name (拉取镜像) eg: docker pull mysql 下载最新版的latest docker pull name:tag eg:docker pull mysql:5.7.19 下载指定的tag版本 docker images 查看本地所有镜像 [root@root /]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE mysql 5.7.19 3e3878acd190 23 months ago 412MB docker rmi imageId 删除镜像 eg:docker rmi 3e3878acd190
以tomcat为例: 1、搜索镜像 docker search tomcat 2、拉取镜像 docker pull tomcat 3、启动容器 docker run --name container-name -d image-name container-name 容器名称 -d 后台运行 image-name 镜像名称 eg: docker run --name mytomcat -d tomcat:latest 4、查看运行中的容器 docker ps 查看所有的容器 docker ps -a 5、停止容器 docker stop container-name/container-id 6、启动容器 docker start container-name/container-id 7、删除容器 docker rm container-id 8、端口映射 -p 8888:8080 将虚拟机的8888端口映射到容器的8080 eg:docker run -d -p 8888:8080 tomcat(不指定容器名称) 或者 eg:docker run -d -p 8888:8080 --name mytomcat docker.id/tomcat 9、容器日志 docker logs container-name/container-id 10、service firewalld status 防火墙状态 11、service firewalld stop 暂时关闭防火墙
#省略搜索下载 查看安装的镜像 [root@root /]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE tomcat latest ee48881b3e82 29 hours ago 506MB mysql 5.7.19 3e3878acd190 23 months ago 412MB 运行mysql docker run -d --name mysql -p 3306:3306 mysql:5.7.19
sudo docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/conf:/etc/mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0
直接启动MySQL:
docker start mysql/mysql 的 ID
重启docker实例mysql :
sudo docker restart mysql
以交互模式进入到容器(mysql)内部
sudo docker exec -it + (容器得名字或者)容器ID (容器ID 只要和其他得容器不一样就行,不用写全) /bin/bash.
例如 : sudo docker exec -it mysql /bin/bash
查看目录结构 ls /
查看mysql装在那个位置 whereis mysql
查看mysql运行状态 [root@root /]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a407363a0a5f mysql:5.7.19 "docker-entrypoint.s…" About a minute ago Exited (1) About a minute ago mysql 3e53fbd0909e tomcat "catalina.sh run" 10 minutes ago Up 10 minutes 0.0.0.0:8888->8080/tcp modest_swirles 发现mysql退出了 查看容器日志 docker logs container-id [root@root /]# docker logs a407363a0a5f error: database is uninitialized and password option is not specified You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD 这三个参数必须指定一个 删除容器 docker rm container-name 重新启动 [root@root /]# docker run -d -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.19 256a46e32a8142257e5e90993083ce9278817999d64c816d86eb7132eeeabad4 [root@root /]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 256a46e32a81 mysql:5.7.19 "docker-entrypoint.s…" 10 seconds ago Up 9 seconds 0.0.0.0:3306->3306/tcp mysql01 3e53fbd0909e tomcat "catalina.sh run" 18 minutes ago Up 18 minutes 0.0.0.0:8888->8080/tcp modest_swirles 命令行操作mysql docker exec -it container-name bash docker exec -it mysql01 bash mysql -u root -p 参考 :
作者:Mason啊
链接:https://www.jianshu.com/p/701893a132bd
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。