Skip to content

部署 MySQL

1.创建默认的配置文件和数据

sh
mkdir mysql_data # 数据文件目录
mkdir mysql_init # 初始化脚本文件目录
mkdir mysql_conf # 配置文件目录
docker pull mysql:8 # 拉取镜像

2.docker-compose.yaml 和配置文件内容

yaml
services:
  mysql_server:
    image: mysql:8
    container_name: mysql_server
    restart: always
    ports:
      - 3306:3306
    environment:
      MYSQL_DATABASE: demo
      MYSQL_USER: dev
      MYSQL_PASSWORD: dev123456
      MYSQL_ROOT_PASSWORD: root123456
    volumes:
      - ./mysql_conf:/etc/mysql/conf.d
      - ./mysql_init:/docker-entrypoint-initdb.d
      - ./mysql_data:/var/lib/mysql

部署 postgres

1.创建挂载目录和初始化文件目录

注: postgres 的配置文件在 ./postgres_data/ 目录下的: postgresql.conf pg_hba.conf pg_ident.conf

sh
# 创建初始化挂载目录 & 获取默认的配置文件 & 拉取镜像
mkdir ./pgsql_data ./pgsql_init
docker pull postgres:15

2.docker-compose.yaml

yaml
services:
  postgres_server:
    image: postgres:15
    restart: always
    container_name: pgsql15
    environment:
      POSTGRES_PASSWORD: root123456 # 密码(注意修改)
      # POSTGRES_USER: root # 用户(默认:postgres)
      # POSTGRES_DB: root # 数据库名(默认使用 POSTGRES_USER 的值)
    ports:
      - 5432:5432
    volumes:
      - ./pgsql_data:/var/lib/postgresql/data
      - ./pgsql_init:/docker-entrypoint-initdb.d/

部署 redis

1.获取默认配置文件

sh
mkdir ./redis_data ./redis_conf
touch ./redis_conf/redis.conf
# 注意 redis.conf 文件需要手动创建
docker pull redis:8

2.修改配置文件, 允许远程连接

主要修改 3 个选项:

  • bind 的值修改为 0.0.0.0 或者直接注释也可以
  • protected-mode 的值修改为 no 关闭保护模式, 允许远程链接
  • requirepass 的值修改为 your_password 远程连接需要的密码,可以是其他值,默认是注释的,需要手动取消注释

3.docker-compose.yaml 和配置文件内容

yaml
services:
  redis_server:
    image: redis:8
    restart: always
    container_name: redis_server
    ports:
      - 6379:6379
    volumes:
      - ./redis_conf:/etc/reids
      - ./redis_data:/data
ini
bind 0.0.0.0
protected-mode no
requirepass your_password

部署 mongodb

1.创建配置文件和初始化脚本

sh
mkdir mongo_conf mongo_data mongo_init

# 手动创建 mongod.conf
touch ./mongo_conf/mongod.conf

docker pull mongo:8

2.docker-compose.yaml

yaml
services:
  mongo_server:
    image: mongo:8
    restart: always
    container_name: mongo_server
    environment:
      MONGO_INITDB_ROOT_USERNAME: root
      MONGO_INITDB_ROOT_PASSWORD: root123456 # root 密码
      MONGO_INITDB_DATABASE: demo # 初始数据库名称
    ports:
      - 27017:27017
    volumes:
      - ./mongo_conf/mongod.conf:/etc/mongod.conf
      - ./mongo_data:/data/db
      - ./mongo_init:/docker-entrypoint-initdb.d/
yaml
# http://docs.mongodb.org/manual/reference/configuration-options/

# 允许远程链接
net:
  port: 27017
  bindIp: 0.0.0.0 # default: 127.0.0.1

客户端推荐

usql 命令行客户端推荐

Mac 开源免费 MySQL 客户端 Sequel Ace

Redis 开源免费客户端

MongoDB 官方客户端

Postgres 开源客户端 PgAdmin 4

Released under the MIT License.