sqlx/tests/docker-compose.yml
2020-06-21 04:35:28 -07:00

213 lines
6.2 KiB
YAML

version: "3"
services:
sqlx:
build: "."
volumes:
- "../:/home/rust/src"
- "$HOME/.cargo/registry:/usr/local/cargo/registry"
working_dir: "/home/rust/src"
environment:
CARGO_TARGET_DIR: "/home/rust/src/tests/target"
CARGO_INCREMENTAL: "0"
RUSTFLAGS: "-Zprofile -Ccodegen-units=1 -Copt-level=0 -Clink-dead-code -Coverflow-checks=off -Zpanic_abort_tests -Cpanic=abort"
RUSTDOCFLAGS: "-Cpanic=abort"
#
# MySQL 5.6.x, 5.7.x, 8.x
# https://www.mysql.com/support/supportedplatforms/database.html
#
mysql_8:
image: mysql:8.0
volumes:
- "./mysql/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: sqlx
mysql_5_7:
image: mysql:5.7
volumes:
- "./mysql/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: sqlx
mysql_5_6:
image: mysql:5.6
volumes:
- "./mysql/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: sqlx
#
# MariaDB 10.5, 10.4, 10.3, 10.2, 10.1
# https://mariadb.org/about/#maintenance-policy
#
mariadb_10_5:
image: mariadb:10.5
volumes:
- "./mysql/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: sqlx
mariadb_10_4:
image: mariadb:10.4
volumes:
- "./mysql/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: sqlx
mariadb_10_3:
image: mariadb:10.3
volumes:
- "./mysql/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: sqlx
mariadb_10_2:
image: mariadb:10.2
volumes:
- "./mysql/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: sqlx
mariadb_10_1:
image: mariadb:10.1
volumes:
- "./mysql/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: sqlx
#
# PostgreSQL 12.x, 10.x, 9.6.x, 9.5.x
# https://www.postgresql.org/support/versioning/
#
postgres_13:
build:
context: .
dockerfile: postgres/Dockerfile
args:
VERSION: 13-beta1
environment:
POSTGRES_DB: sqlx
POSTGRES_USER: postgres
POSTGRES_PASSWORD: password
POSTGRES_HOST_AUTH_METHOD: scram-sha-256
POSTGRES_INITDB_ARGS: --auth-host=scram-sha-256
volumes:
- "./postgres/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
command: >
-c ssl=on -c ssl_cert_file=/var/lib/postgresql/server.crt -c ssl_key_file=/var/lib/postgresql/server.key
postgres_12:
build:
context: .
dockerfile: postgres/Dockerfile
args:
VERSION: 12.3
environment:
POSTGRES_DB: sqlx
POSTGRES_USER: postgres
POSTGRES_PASSWORD: password
POSTGRES_HOST_AUTH_METHOD: scram-sha-256
POSTGRES_INITDB_ARGS: --auth-host=scram-sha-256
volumes:
- "./postgres/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
command: >
-c ssl=on -c ssl_cert_file=/var/lib/postgresql/server.crt -c ssl_key_file=/var/lib/postgresql/server.key
postgres_10:
build:
context: .
dockerfile: postgres/Dockerfile
args:
VERSION: 10.13
environment:
POSTGRES_DB: sqlx
POSTGRES_USER: postgres
POSTGRES_PASSWORD: password
POSTGRES_HOST_AUTH_METHOD: trust
volumes:
- "./postgres/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
command: >
-c ssl=on -c ssl_cert_file=/var/lib/postgresql/server.crt -c ssl_key_file=/var/lib/postgresql/server.key
postgres_9_6:
build:
context: .
dockerfile: postgres/Dockerfile
args:
VERSION: 9.6
environment:
POSTGRES_DB: sqlx
POSTGRES_USER: postgres
POSTGRES_PASSWORD: password
POSTGRES_HOST_AUTH_METHOD: md5
volumes:
- "./postgres/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
command: >
-c ssl=on -c ssl_cert_file=/var/lib/postgresql/server.crt -c ssl_key_file=/var/lib/postgresql/server.key
postgres_9_5:
build:
context: .
dockerfile: postgres/Dockerfile
args:
VERSION: 9.5
environment:
POSTGRES_DB: sqlx
POSTGRES_USER: postgres
POSTGRES_PASSWORD: password
POSTGRES_HOST_AUTH_METHOD: password
volumes:
- "./postgres/setup.sql:/docker-entrypoint-initdb.d/setup.sql"
command: >
-c ssl=on -c ssl_cert_file=/var/lib/postgresql/server.crt -c ssl_key_file=/var/lib/postgresql/server.key
#
# Microsoft SQL Server (MSSQL)
# https://hub.docker.com/_/microsoft-mssql-server
#
mssql_2019:
build:
context: .
dockerfile: mssql/Dockerfile
args:
VERSION: 2019-latest
environment:
ACCEPT_EULA: Y
SA_PASSWORD: Password123!
mssql_2017:
build:
context: .
dockerfile: mssql/Dockerfile
args:
VERSION: 2017-latest
environment:
ACCEPT_EULA: Y
SA_PASSWORD: Password123!
#
# IBM Db2
# https://hub.docker.com/r/ibmcom/db2
#
db2_11:
image: ibmcom/db2:11.5.1.0-CN1
privileged: true
environment:
LICENSE: accept
DB2INST1_PASSWORD: password
DBNAME: sqlx