gtsoft-snail-job-server/doc/docker/docker-compose.yaml

84 lines
2.6 KiB
YAML

name: snail-job
volumes:
mysql: { }
postgres: { }
sqlserver: { }
mariadb: { }
services:
mysql:
image: mysql:8.0.33
restart: unless-stopped
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: snail_job
ports:
- "3306:3306"
volumes:
- mysql:/var/lib/mysql/
# 注入初始化脚本
- ../sql/snail_job_mysql.sql:/docker-entrypoint-initdb.d/init.sql:ro
command:
--default-authentication-plugin=mysql_native_password
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
postgres:
image: postgres:14.2
environment:
POSTGRES_USER: root
POSTGRES_PASSWORD: root
POSTGRES_DB: snail_job
ports:
- "5432:5432"
volumes:
- postgres:/var/lib/postgresql/data
# 注入初始化脚本
- ../sql/snail_job_postgre.sql:/docker-entrypoint-initdb.d/init.sql:ro
oracle:
image: gvenzl/oracle-xe:18-slim-faststart
environment:
## 登录信息 SID: XE user: system password: oracle
ORACLE_PASSWORD: oracle
ports:
- "1521:1521"
volumes:
- ../sql/snail_job_oracle.sql:/tmp/schema.sql:ro
# 创建app用户: snail_job/SnailJob@//localhost/XEPDB1
- ./oracle/1_create_user.sql:/docker-entrypoint-initdb.d/1_create_user.sql:ro
- ./oracle/2_create_schema.sh:/docker-entrypoint-initdb.d/2_create_schema.sh:ro
sqlserver:
image: mcr.microsoft.com/mssql/server:2017-latest
environment:
TZ: Asia/Shanghai
ACCEPT_EULA: "Y"
SA_PASSWORD: "SnailJob@24"
ports:
- "1433:1433"
volumes:
- sqlserver:/var/opt/mssql
- ../sql/snail_job_sqlserver.sql:/tmp/schema.sql:ro
# docker compose exec sqlserver bash /tmp/create_schema.sh
- ./sqlserver/create_schema.sh:/tmp/create_schema.sh:ro
mariadb:
image: mariadb:10.11.7
restart: unless-stopped
environment:
TZ: Asia/Shanghai
MARIADB_ROOT_PASSWORD: root
MARIADB_DATABASE: snail_job
ports:
- "3308:3306"
volumes:
- mariadb:/var/lib/mysql/
# 注入初始化脚本, mysql
- ../sql/snail_job_mysql.sql:/docker-entrypoint-initdb.d/init.sql:ro