一、安装docker
1、下载docker相关包
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
2、下载装载docker的地址
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3、下载docker
yum install docker-ce docker-ce-cli containerd.io
4、启动docker服务
systemctl start docker
5、设置开机自启动
systemctl enable docker
二、配置阿里云加速
1、 sudo mkdir -p /etc/docker
2、sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://b96v4bd4.mirror.aliyuncs.com"]
}
EOF
3、sudo systemctl daemon-reload
4、sudo systemctl restart docker
三、使用docker安装mysql
1、下载mysql5.7版本
docker pull mysql:5.7
2、配置相关文件
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=root \
-d mysql:5.7
说明:
-p 3306:3306 :将容器的3306端口映射到主机的3306端口
--name mysql :为docker容器起名为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=root :初始化root用户密码 密码:root
-d :使用后台方式运行
\ :表示换行
1)进入/mydata/mysql/conf 配置相关文件设置默认字符集:utf-8
vi my.cnf
插入并保存
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqlId]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-sever=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
//重启mysql
docker restart mysql
//进入到mysql容器中 查看刚刚在linux中配置的文件是否映射到docker容器中
docker exec -it mysql /bin/bash
//查看/etc/mysql文件夹中的my.cnf,发现内容和linux中/mydata/mysql/conf的内容一样
cd /etc/mysql
cat my.cnf
四、安装redis
//下载redis 默认最新
docker pull redis
//在linux中先创建配置文件
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
docker run -p 6379:6379 --name redis -v /madata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
//进入redis.conf 添加 appendonly yes
五、让docker容器下的mysql与redis在每次ssh虚拟机的时候自动启动
docker update redis --restart=always
docker update mysql--restart=always