Docker 和传统虚拟化方式的不同之处,可见容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,而传统方式则是在硬件层面实现。
安装步骤
1.拉取mysql镜像
docker pull mysql:5.7
也可以采用网易加速地址下载 mysql5.7:
docker pull hub.c.163.com/library/mysql:5.7
重命名镜像名:
docker tag hub.c.163.com/library/mysql:5.7 mysql:5.7
查看 docker 中的镜像:
docker images
- REPOSITORY:表示镜像的仓库源
- TAG:镜像的标签
- IMAGE ID:镜像ID
- CREATED:镜像创建时间
- SIZE:镜像大小
2.创建用于挂载的目录
mkdir -p ~/mysql #用于挂载mysql数据文件
3.运行容器
docker run --name mysql5.7 -p 3306:3306 -v ~/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=introcks1234 -d mysql:5.7 --character-set-server=utf8 --collation-server=utf8_general_ci
- --name:容器名
- --p:映射宿主主机端口
- -v:挂载宿主目录到容器目录
- -e:设置环境变量,此处指定root密码
- -d:守护进程模式运行
- -character-set-server --collation-server 字符集设置
4.查看容器启动情况
docker ps
5.如果物理机没有mysql-clinet 则需要下载mysql-client(如果不使用ssh命令连接可忽略)
sudo apt-get install mysql-client-core-5.7.21
我本地则装了:
sudo apt-get install mysql-client-core-5.6
6.连接mysql
mysql -h192.168.6.183 -p3306 -uroot -pintrocks1234
192.168.6.183 是主机ip,如果是 docker 安装机器,用 127.0.0.1 也可以。
也可以进入容器内连接:
docker exec -it mysql5.7 mysql -uroot -pintrocks1234
- docker exec 进入容器
- -t 让docker分配一个伪终端,并绑定到容器的标准输入上
- -i 让容器的标准输入保持打开
- mysql5.7 是容器的名字
docker 命令
1.启动容器
docker start mysql5.7
2.查看 docker 进程
docker ps
3.停止容器
docker stop mysql5.7
4.删除容器
非运行时,可以删除:
docker rm mysql5.7