官方安装文档:https://docs.docker.com/engine/install/centos/
参考官方文档的简化安装过程:
步骤1:卸载(保证系统中不包含docker)
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
步骤2:创建仓库
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
步骤3:安装Docker引擎
sudo yum install docker-ce docker-ce-cli containerd.io
步骤4:启动Docker
sudo systemctl start docker
步骤5:设置开机自启
sudo systemctl enable docker
步骤6:配置镜像加速,阿里云
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://frz3dfut.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
阿里云镜像加速器:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
步骤1:获得root权限
su root
步骤2:安装mysql
docker pull mysql:5.7
步骤3:创建实例并启动
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7
启动成功后会返回一串id,输入docker ps
可以查看docker当前运行的容器。
可选:设置开机自动启动
sudo docker update mysql --restart=always
docker run
:启动容器
docker中每一个容器都可以看作一个完整的linux系统。输入命令docker exec -it mysql /bin/bash
,进入容器内部。再次输入ls
,查看当前目录,与 linux的目录结构基本一样。(exit;
退出容器)
-p 3306:3306
:在MySql容器中3306是mysql的端口,需要将mysql容器的端口映射到linux内,相当于访问linux的3306端口,就可以访问MySql容器的3306端口。
--name
:给容器起一个名字。
-v
:目录挂载。
-v /mydata/mysql/log:/var/log/mysql
:在linux目录下创建mydata/mysql/log
目录,将MySql容器下的var/log/mysql
目录与之挂载。就是MySql容器内var/log/mysql
目录下的资源可在Linux的mydata/mysql/log
目录下查看到。一处修改,另一处同时发生改变。
步骤1:创建配置文件
cd /mydata/mysql/conf
vi my.cnf
步骤2:编写配置文件
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
在vi内,点击右键粘贴。
:wq
保存退出
注意:配置文件写错的话,就无法启动MySQL了。
步骤3:重启mysql容器
docker restart mysql
启动mysql容器的命令为:docker start mysql
步骤1:获得root权限
su root
步骤2:安装redis
docker pull redis
不选择版本时,默认安装最新版本。
dockerhub:https://registry.hub.docker.com/_/redis
步骤3:创建配置文件目录
mkdir -p /mydata/redis/conf
步骤4:创建配置文件
touch /mydata/redis/conf/redis.conf
步骤5:创建实例并启动
docker run -p 6379:6379 --name redis \
-v /mydata/redis/data:/data \
-v /mydata/reids/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
检查是否运行成功
输入:docker ps
可以看到mysql和redis已经启动了。
启动redis控制台命令:docker exec -it redis redis-cli
退出redis控制台命令:exit
可选:设置开机自动启动
sudo docker update redis --restart=always
步骤1:打开配置文件
cd /mydata/redis/conf
vi redis.conf
步骤2:修改配置
appendonly yes
i
:编辑
esc
:退出编辑
:wq
:保存退出
持久化数据,保证重启redis容器后,数据仍然在。
redis的详细配置:https://redis.io/topics/config
步骤3:重启redis
docker restart redis