MySQL部署
案例需求:
- 在Docker容器中部署MySQL,并通过外部mysql客户端操作MySQL Server
实现步骤:
- 搜索mysql镜像
- 拉取mysql镜像
- 创建容器
- 操作容器中的mysql
相关知识:
- 容器内的网络服务和外部机器不能直接通信
- 外部机器和宿主机可以直接通信
- 宿主机和容器可以直接通信
- 当容器中的网络服务需要被外部机器访问时,可以将容器中提供服务的端口映射到宿主机的端口上;外部机器通过访问宿主机的端口,从而间接访问容器的服务;这种操作称为端口映射
搜索mysql镜像
docker search mysql
拉取mysql镜像
docker pull mysql:5.6
创建容器,设置端口映射、目录映射
# 在根目录下创建mysql目录,用于存储mysql数据信息
mkdir ~/mysql
cd ~/mysql
docker run -id -p 3307:3306 --name=c_mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6参数说明:-p 3307:3306 -- 将容器的3306端口映射到宿主机的3307端口-v $PWD/conf:/etc/mysql/conf.d -- 将主机当前目录下的配置目录挂载到容器的配置目录-v $PWD/logs:/logs -- 将主机当前目录下的日志目录挂载到容器的日志目录-v $PWD/data:/var/lib/mysql -- 将主机当前目录下的数据目录挂载到容器的数据目录-e MYSQL_ROOT_PASSWORD=123456 -- 初始化root用户的密码
Anaconda3部署
# 在hub.docker.com上搜索anaconda
# 拉取continuumio/anaconda3镜像
docker pull continuumio/anaconda3# 创建并运行容器
docker run -it --name my_anaconda continuumio/anaconda3 /bin/bash