services:
postgres:
image: postgres:16-alpine
container_name: sparkless-postgres
environment:
POSTGRES_USER: sparkless
POSTGRES_PASSWORD: sparkless
POSTGRES_DB: sparkless
ports:
- "5432:5432"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U sparkless -d sparkless"]
interval: 2s
timeout: 5s
retries: 10
mysql:
image: mysql:8.0
container_name: sparkless-mysql
environment:
MYSQL_DATABASE: sparkless
MYSQL_USER: sparkless
MYSQL_PASSWORD: sparkless
MYSQL_ROOT_PASSWORD: root
ports:
- "3306:3306"
healthcheck:
test: ["CMD-SHELL", "mysqladmin ping -h 127.0.0.1 -uroot -proot --silent"]
interval: 2s
timeout: 5s
retries: 20
mariadb:
image: mariadb:10.11
container_name: sparkless-mariadb
environment:
MARIADB_DATABASE: sparkless
MARIADB_USER: sparkless
MARIADB_PASSWORD: sparkless
MARIADB_ROOT_PASSWORD: root
ports:
- "3307:3306"
healthcheck:
test: ["CMD-SHELL", "mariadb-admin ping -h 127.0.0.1 -uroot -proot --silent"]
interval: 2s
timeout: 5s
retries: 20
mssql:
image: mcr.microsoft.com/mssql/server:2022-latest
container_name: sparkless-mssql
environment:
ACCEPT_EULA: "Y"
MSSQL_SA_PASSWORD: "Sparkless123!"
MSSQL_PID: "Developer"
ports:
- "1433:1433"
healthcheck:
test:
[
"CMD-SHELL",
"/opt/mssql-tools18/bin/sqlcmd -S localhost -U sa -P \"Sparkless123!\" -C -Q \"SELECT 1\" 1>/dev/null || exit 1",
]
interval: 5s
timeout: 5s
retries: 30
oracle:
image: gvenzl/oracle-free:23-slim-faststart
container_name: sparkless-oracle
environment:
ORACLE_PASSWORD: oracle
ports:
- "1521:1521"
healthcheck:
test: ["CMD-SHELL", "healthcheck.sh"]
interval: 10s
timeout: 10s
retries: 30
db2:
image: ibmcom/db2:11.5.8.0
container_name: sparkless-db2
privileged: true
environment:
LICENSE: accept
DB2INSTANCE: db2inst1
DB2INST1_PASSWORD: password
DBNAME: SPARKDB
ARCHIVE_LOGS: "false"
AUTOCONFIG: "false"
ports:
- "50000:50000"
healthcheck:
test: ["CMD-SHELL", "su - db2inst1 -c 'db2 connect to SPARKDB'"]
interval: 30s
timeout: 30s
retries: 20