关于Docker的一些事情

1:关于dokcer国内镜像设置

{
  "registry-mirrors": [
    "https://你的阿里云服务器申请的镜像地址.aliyuncs.com",
    "https://mirror.ccs.tencentyun.com",
    "https://mirror.baidubce.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://docker.nju.edu.cn",
    "https://docker.m.daocloud.io"
  ]
}

2:关于安装mysql

1、拉取MySql镜像

docker pull mysql:8.0

2、启动MySql容器

docker run -d \
  --name mysql8 \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=your_password \  # 设置 root 用户密码
  -e MYSQL_DATABASE=testdb \             # 初始化一个数据库(可选)
  -v mysql_data:/var/lib/mysql \         # 数据持久化(挂载到本地卷)
  --restart unless-stopped \             # 容器退出后自动重启(可选)
  mysql:8.0

3、参数说明

  • -d:后台运行容器

  • --name mysql8:给容器起一个名称(方便后续操作)

  • -p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口(主机端口:容器端口)

  • -e:设置环境变量(MYSQL_ROOT_PASSWORD 是必须的,用于设置 root 密码)

  • -v mysql_data:/var/lib/mysql:创建数据卷 mysql_data 持久化存储 MySQL 数据(避免容器删除后数据丢失)

4、验证 MySQL 是否运行

# 查看容器状态
docker ps | grep mysql8

# 进入 MySQL 容器内部
docker exec -it mysql8 bash

# 在容器内登录 MySQL(输入上面设置的密码)
mysql -u root -p

3:关于安装redis

1. 拉取 Redis 镜像

拉取官方 Redis 镜像(这里以 7.0 版本为例):

docker pull redis:7.0

2. 启动 Redis 容器(基础版)

如果不需要自定义配置,可直接启动:

docker run -d \
  --name redis7 \
  -p 6379:6379 \
  -v redis_data:/data \         # 持久化 Redis 数据
  --restart unless-stopped \
  redis:7.0 \
  redis-server --appendonly yes  # 开启 AOF 持久化(数据持久化到磁盘)

3. 启动 Redis 容器(带自定义配置,可选)

如果需要自定义配置(如密码、内存限制等),可先创建配置文件:

# 1. 在本地创建配置文件目录和配置文件
mkdir -p ~/docker/redis/conf
touch ~/docker/redis/conf/redis.conf

# 2. 编辑配置文件(添加需要的配置,如设置密码)
echo "requirepass your_redis_password" >> ~/docker/redis/conf/redis.conf  # 设置密码
echo "appendonly yes" >> ~/docker/redis/conf/redis.conf  # 开启 AOF 持久化

# 3. 启动容器(挂载自定义配置文件)
docker run -d \
  --name redis7 \
  -p 6379:6379 \
  -v ~/docker/redis/conf/redis.conf:/etc/redis/redis.conf \  # 挂载配置文件
  -v redis_data:/data \
  --restart unless-stopped \
  redis:7.0 \
  redis-server /etc/redis/redis.conf  # 指定使用自定义配置文件

4. 验证 Redis 是否运行

# 查看容器状态
docker ps | grep redis7

# 进入 Redis 容器并连接客户端
docker exec -it redis7 redis-cli

# 如果设置了密码,需要先认证
127.0.0.1:6379> auth your_redis_password  # 输入配置的密码
127.0.0.1:6379> ping  # 测试连接,返回 PONG 表示成功