源本科技 | 码上会

Docker 部署数据库

2026/03/13
82
0

MySQL 8.x

services:
  mysql:
    image: mysql:8.0
    container_name: mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: 123456
      TZ: Asia/Shanghai
    command: 
      - --default-authentication-plugin=mysql_native_password
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_unicode_ci
      - --lower_case_table_names=1
    ports:
      - "3306:3306"
    volumes:
      - ./mysql_data:/var/lib/mysql

PostgreSQL

services:
  postgres:
    image: postgres:15
    container_name: postgres
    restart: always
    environment:
      # 默认账户为 `postgres`
      POSTGRES_PASSWORD: 123456
    ports:
      - "5432:5432"
    volumes:
      - ./postgres-data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U test -d testdb"]
      interval: 10s
      timeout: 5s
      retries: 5

Redis

services:
  redis:
    image: redis:6-alpine
    container_name: redis
    restart: always
    ports:
      - "6379:6379"
    volumes:
      - ./redis_data:/data
    command: redis-server --appendonly yes --requirepass 123456

工具下载

SQLYog

Another Redis Desktop