目录
步骤
1. 查找 Docker Hub 上的 MySQL 镜像
2.docker pull MySQL 拉取镜像
3. 运行容器
4. 查看容器启动情况
使用命令备注
步骤
1. 查找 Docker Hub 上的 MySQL 镜像
- [email protected]:/usr/local/docker/MySQL# docker search MySQL
- NAME DESCRIPTION STARS OFFICIAL AUTOMATED
- MySQL MySQL is a widely used, open-source relati... 5177 [OK]
- mariadb MariaDB is a community-developed fork of M... 1602 [OK]
- MySQL/MySQL-server Optimized MySQL Server Docker images. Crea... 361 [OK]
- ......
这里我们拉取官方的镜像
2.docker pull MySQL 拉取镜像
等待下载完成后, 我们就可以在本地镜像列表里查到 REPOSITORY 为 MySQL 的镜像
3. 运行容器
docker run -p 3306:3306 --name docker-MySQL -v /usr/local/docker/MySQL/conf:/etc/MySQL -v /usr/local/docker/MySQL/logs:/var/log/MySQL -v /usr/local/docker/MySQL/data:/var/lib/MySQL -e MYSQL_ROOT_PASSWORD=123456 -d MySQL
命令参数:
-p 3307:3306: 将容器的 3306 端口映射到主机的 3306 端口
-v /usr/local/docker/MySQL/conf:/etc/MySQL: 将主机当前目录下的 conf 挂载到容器的 /etc/MySQL
-v /usr/local/docker/MySQL/logs:/var/log/MySQL: 将主机当前目录下的 logs 目录挂载到容器的 /var/log/MySQL
-v /usr/local/docker/MySQL/data:/var/lib/MySQL: 将主机当前目录下的 data 目录挂载到容器的 /var/lib/MySQL
-e MYSQL_ROOT_PASSWORD=123456: 初始化 root 用户的密码
注意:-v 宿主机的路径可以是不存在的, 容器会自动创建, 这里 conf 使用拷贝过来的自己的目录, 然后 data 目录设为空也就是, 让容器数据库自己去生成数据文件放进去, 不然可能会出现数据访问权限问题, 如果使用自己的数据库文件 / var/lib/MySQL 拷贝到 data 目录挂载使用出现 Can't read dir of'./MySQL/' (errno: 13 - Permission denied) 问题, 请进入容器将目录的所属改为 MySQL(命令为 chown -R 所属人: 所属组 目录)
4. 查看容器启动情况
- [email protected]:/usr/local/docker/MySQL# docker ps
- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
- bc49c9de4cdf MySQL:latest "docker-entrypoint..." 4 minutes ago Up 4 minutes 0.0.0.0:3306->3306/tcp MySQL
使用客户端工具连接 MySQL
使用命令备注
- docker run -p 3307:3306 --name docker-MySQL-5.7.25 -v /usr/local/docker/MySQL/conf:/etc/MySQL -v /usr/local/docker/MySQL/logs:/var/log/MySQL -v /usr/local/docker/MySQL/data:/var/lib/MySQL -e MYSQL_ROOT_PASSWORD=123456 -d MySQL:5.7.25
- docker run -p 3307:3306 --name docker-MySQL-5.7.25 -v /usr/local/docker/MySQL/logs:/var/log/MySQL -v /usr/local/docker/MySQL/data:/var/lib/MySQL -e MYSQL_ROOT_PASSWORD=123456 -d MySQL:5.7.25
- docker run --name myshopAdmin -p 8081:8080 -v /usr/local/docker/tomcat/ROOT:/usr/local/tomcat/webapps/ROOT -d tomcat??
本博客为 Swagger-Ranger 的笔记分享, 文中源码地址: https://github.com/Swagger-Ranger
欢迎交流指正, 如有侵权请联系作者确认删除: [email protected]
来源: http://www.bubuko.com/infodetail-3015806.html