1. docker的官方文档
https://docs.docker.com/get-docker/
2. 点击Linux版本
3. 选中CentOS版本
https://docs.docker.com/engine/install/centos/
4. 按照文档内容进行操作
4.1 卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
4.2 设置源
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
4.3 安装Docker引擎
sudo yum install docker-ce docker-ce-cli containerd.io
5. Docker的使用
5.1 启动Docker
sudo systemctl start docker
可以使用 sudo docker images 检查当前Docker里有哪些镜像
5.2 设置开机自启动
sudo systemctl enable docker
5.3 验证是否正确安装
sudo docker run hello-world
6. 配置镜像加速(可选)
登录阿里云,在产品中输入容器镜像服务,进入控制台页面,如下
根据文档所示操作即可。
7. 安装mysql(可选)
7.1 镜像仓库地址
https://hub.docker.com/
搜索mysql
7.2 以下载5.7版本的为例
下载镜像文件
sudo docker pull mysql:5.7
创建实例并启动
sudo docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
docker ps查看当前正在运行中的容器
-v为目录挂载
更改MySQL配置文件
进入路径 cd /mydata/mysql/conf
cat my.cnf
插入以下内容到文件中
[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
用i编辑,wq退出
配置完后需要重启
docker restart mysql
进入容器查看配置(可选)
[root@xxxxx: conf]# docker exec -it mysql /bin/bash
root@xxxxx::/# whereis mysql
mysql: /usr/bin/mysql /usr/lib/mysql /etc/mysql /usr/share/mysql
root@xxxxx:/# ls /etc/mysql
my.cnf
root@xxxxx::/# cat /etc/mysql/my.cnf
[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
root@xxxxx::/# exit;
7.3 设置启动docker时,即运行mysql(可选)
docker update mysql --restart=always
8. 安装redis(可选)
8.1 下载redis镜像
docker pull redis
8.2 创建实例并启动
[root@xxxxx ~]# mkdir -p /mydata/redis/conf
[root@xxxxx ~]# touch /mydata/redis/conf/redis.conf
[root@xxxxx ~]# echo "appendonly yes" >> /mydata/redis/conf/redis.conf
[root@xxxxx ~]# docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
测试能否使用
[root@xxxxx ~]# docker exec -it redis redis-cli
127.0.0.1:6379> set a b
OK
127.0.0.1:6379> get a
"b"
127.0.0.1:6379>
使用exit命令退出容器
8.3 设置redis容器自启动
docker update redis --restart=always