一、安装docker

yum -y install docker

如果非root(推荐),为了方便,下面的所有操作都是使用root身份操作的

sudo yum -y install docker


查看是否安装成功:

docker version

如何有显示版本之类的信息,说明安装成功


二、安装nsenter

命令行中,为了方便已切换到root用户(这里我们只编译nsenter,然后手动安装到/usr/local/bin中):

wget https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz

tar -xvf util-linux-2.24.tar.gz

cd util-linux-2.24/

./configure --without-ncurses 

make nsenter

cp nsenter /usr/local/bin


检测msenter是否安装成功:

nsenter --version

如果显示版本说明成功

nsenter可以访问另一个进程的名称空间。所以为了连接到某个容器我们还需要获取该容器的第一个进程的PID。可以使用docker inspect命令来拿到该PID

可以使用docker inspect来查看docker容器的详细信息:

docker inspect --help

查看容器:

docker ps


三、安装、使用mysql

启用docker:

systemctl start docker.service

镜像中获取mysql:

docker pull mysql​或者pull docker mysql:5.7(指定版本)

查看镜像:

docker images

创建宿主机数据存放目录:

mkdir -p /opt/data/mysql

docker中启动mysql:

docker run --name first-docker-mysql -v /opt/data/mysql/:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d docker.io/mysql

如果本地已经有镜像了可以使用:

docker run --name first-docker-mysql -v /opt/data/mysql/:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql

也可以省略部分选项:

sudo docker run --name second-mysql -p 3306:3306 -e MYSQL\_ROOT\_PASSWORD=123456 -d mysql


查看docker容器:

docker ps


进入容器(​504f30ba83e7​为docker ps命令返回的容器id):

docker exec -it 504f30ba83e7 /bin/bash

然后就相当于进入了一台主机了执行mysql命令:

mysql -u root -p