version: '3.8'
services:
redis:
image: redis:7.2.4
container_name: redis-server
restart: unless-stopped
ports:
- "6381:6379"
volumes:
- ./data:/data
- ./conf/redis.conf:/usr/local/etc/redis/redis.conf
command: redis-server /usr/local/etc/redis/redis.conf
environment:
- TZ=Asia/Shanghai
networks:
- redis-net
networks:
redis-net:
driver: bridge
config:
# Redis配置文件示例
port 6381
requirepass X
# 基本配置
daemonize no
protected-mode yes
bind 127.0.0.1
timeout 0
tcp-keepalive 300
# 持久化配置
save 900 1
save 300 10
save 60 10000
# 指定 Docker Compose 文件格式版本
version: '3.8'
# 定义服务列表
services:
# 定义 PostgreSQL 服务
postgres:
# 使用 PostgreSQL 官方镜像,版本13
image: postgres:latest
# 指定容器名称(如果不指定,Docker 会自动生成)
container_name: postgres
# 环境变量配置
environment:
# 设置 PostgreSQL 超级用户(默认为 postgres)
POSTGRES_USER: postgres
# 设置 PostgreSQL 超级用户密码(必须设置)
POSTGRES_PASSWORD: HongGeng1107
# 设置默认创建的数据库名称(默认为 POSTGRES_USER 的值)
# POSTGRES_DB: db-default
# 端口映射配置(主机端口:容器端口)
ports:
- "5432:5432" # 将容器内部的5432端口映射到主机的5432端口
# 数据卷配置(持久化数据)
volumes:
# 使用命名卷 postgres_data 挂载到容器中的数据库数据目录
- postgres_data:/var/lib/postgresql/data
- ./backup:/backup
# 容器重启策略
restart: always # 总是自动重启容器,无论退出状态如何
# 定义卷列表(用于数据持久化)
volumes:
# 定义一个名为 postgres_data 的命名卷
# Docker 会自动管理这个卷,确保数据库数据持久化
# 即使容器被删除,数据也不会丢失
postgres_data:
1 条评论
新车即将上线 真正的项目,期待你的参与