在 Mac 上使用 Docker 安装 Redis 和 MySQL 可以快速搭建开发环境。以下是完整的 Docker 安装、运行、持久化 Redis 和 MySQL 的详细教程。
🚀 1. 安装 Docker
如果你的 Mac 还没有安装 Docker,按照以下步骤安装:
-
访问 Docker 官网 下载 Docker Desktop
-
安装后 启动 Docker,并在终端输入以下命令检查:
docker -v
如果输出:
Docker version 24.x.x, build xxxxx
说明 Docker 安装成功 🎉
🟥 2. 使用 Docker 安装 Redis
🔹 2.1 直接运行 Redis
执行以下命令,运行 Redis 容器:
css
docker run -d --name redis-server -p 6379:6379 redis
说明:
• -d:后台运行容器
• --name redis-server:设置容器名称
• -p 6379:6379:映射 Redis 端口
• redis:拉取最新的 Redis 镜像
测试 Redis 是否安装成功:
docker ps
如果看到 redis-server 运行中,则 Redis 安装成功。
🔹 2.2 连接 Redis
1️⃣ 使用 docker exec 进入 Redis 容器
bash
docker exec -it redis-server redis-cli
2️⃣ 测试 Redis 是否正常
vbnet
set key "hello redis"
get key
如果返回:
arduino
"hello redis"
说明 Redis 运行成功 ✅。
🔹 2.3 让 Redis 持久化(带数据保存)
1️⃣ 创建 Redis 配置文件
在 ~/docker/redis/ 目录下创建 redis.conf:
bash
mkdir -p ~/docker/redis
cd ~/docker/redis
touch redis.conf
然后编辑 redis.conf,添加:
bash
appendonly yes
2️⃣ 运行带持久化的 Redis
ruby
docker run -d --name redis-server \
-p 6379:6379 \
-v ~/docker/redis:/data \
-v ~/docker/redis/redis.conf:/usr/local/etc/redis/redis.conf \
redis redis-server /usr/local/etc/redis/redis.conf
这样 Redis 退出后数据不会丢失! 🎉
🟦 3. 使用 Docker 安装 MySQL
🔹 3.1 运行 MySQL 容器
执行以下命令安装 MySQL:
css
docker run -d --name mysql-server \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=root \
mysql
说明:
• -d:后台运行容器
• --name mysql-server:设置 MySQL 容器名称
• -p 3306:3306:映射端口
• -e MYSQL_ROOT_PASSWORD=root:设置 MySQL root 用户的密码
🔹 3.2 连接 MySQL
1️⃣ 使用 docker exec 进入 MySQL
bash
docker exec -it mysql-server mysql -uroot -p
输入 root(你设置的密码),如果进入 MySQL 控制台,说明安装成功:
ini
SHOW DATABASES;
🔹 3.3 让 MySQL 持久化
默认情况下,MySQL 容器重启后数据会丢失,需要 挂载数据目录:
javascript
docker run -d --name mysql-server \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=root \
-v ~/docker/mysql/data:/var/lib/mysql \
mysql
• -v ~/docker/mysql/data:/var/lib/mysql:将 MySQL 数据存储在本机
🚀 4. 使用 Docker-Compose 管理 Redis & MySQL
手动运行多个容器比较麻烦,可以使用 docker-compose 统一管理。
🔹 4.1 创建 docker-compose.yml
在 ~/docker 目录下创建 docker-compose.yml:
bash
mkdir -p ~/docker
cd ~/docker
touch docker-compose.yml
编辑 docker-compose.yml:
yaml
version: '3'
services:
mysql:
image: mysql:latest
container_name: mysql-server
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
ports:
- "3306:3306"
volumes:
- ~/docker/mysql/data:/var/lib/mysql
redis:
image: redis:latest
container_name: redis-server
restart: always
ports:
- "6379:6379"
volumes:
- ~/docker/redis:/data
command: redis-server --appendonly yes
🔹 4.2 启动所有服务
运行以下命令:
bash
cd ~/docker
docker-compose up -d
查看容器状态:
docker ps
如果看到 mysql-server 和 redis-server 运行中,说明启动成功 🎉。
🔹 4.3 停止和删除容器
• 停止容器:
docker-compose down
• 删除所有数据(慎用):
docker-compose down -v
✅ 5. 总结
步骤 | 操作 |
---|---|
安装 Docker | 下载并安装 Docker Desktop |
安装 Redis | docker run -d --name redis-server -p 6379:6379 redis |
持久化 Redis | redis.conf + -v ~/docker/redis:/data |
安装 MySQL | docker run -d --name mysql-server -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql |
持久化 MySQL | -v ~/docker/mysql/data:/var/lib/mysql |
使用 docker-compose 管理 | 统一启动/停止 Redis 和 MySQL |