一、下载MYSQL和REDIS镜像
没有下载docker的同学可以去看这篇文章,这篇文章主要讲的用docker-compose来启动容器,今天要讲的是用命令行单独启动容器(这篇文章结尾有docker常见命令,可参考用于该篇文章)https://blog.csdn.net/Peaceuai/article/details/124875101?spm=1001.2014.3001.5502
(1)拉取镜像
# 拉取5.7版本的mysql镜像
docker pull mysql:5.7
# 拉取6.0.0.版本的redis镜像
docker pull redis:6
二、通过镜像生成容器
(1)生成MYSQL容器
# -p中 :前为主机端口号,后为容器端口号 -v中 :前为主机文件夹,后为容器文件夹
docker run -p 3315:3306 --name mysql5.7 -e MYSQL_ROOT_PASSWORD=root --privileged=true -v /mount/mysql/data:/var/lib/mysql -v /mount/mysql/log:/var/log/mysql -v /mount/mysql/conf:/etc/mysql/conf.d -d mysql:5.7
生成之后通过挂载文件夹新建一个配置文件,操作如下:(主要是防止中文字符乱码问题)
# 进入挂载配置文件夹
cd /mount/mysql/conf
# 新建文件
vim my.cnf
# 将下面内容复制进文件中
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
# 重启容器
docker restart mysql5.7
(2)生成REDIS容器
先新建REDIS的配置文件,之后可通过挂载进容器中
# 进入挂载文件夹
cd /mount
# 新建redis的挂载文件夹
mkdir redis
# 进入redis的挂载文件夹
cd redis
# 新建一个配置文件
vim redis.conf
# 在文件中写入以下内容
# Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程(这里如果写yes会和docker命令中的-d冲突,所以写no)
daemonize no
# 指定Redis监听端口,默认端口为6379
port 6379
# 绑定的主机地址,不要绑定容器的本地127.0.0.1地址,因为这样就无法在容器外部访问
bind 0.0.0.0
# 需要密码则打开
requirepass 123456
# 持久化
appendonly yes
之后可通过下面的命令创建容器
docker run -p 6389:6379 --name=redis6.0.0 -v /mount/redis/redis.conf:/etc/redis/redis.conf -v /mount/redis/data:/data -d redis:6 redis-server /etc/redis/redis.conf