typeorm/docker-compose.yml
Lucian Mocanu fb06662bea
build: setup SAP HANA tests (#11347)
* build: setup SAP HANA tests

* test: fix/skip failing SAP HANA tests

* fix(sap): rename schema
2025-03-29 22:35:44 +01:00

127 lines
3.2 KiB
YAML

services:
# mysql
mysql:
image: "mysql:5.7.37"
container_name: "typeorm-mysql"
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: "admin"
MYSQL_USER: "test"
MYSQL_PASSWORD: "test"
MYSQL_DATABASE: "test"
# mariadb
mariadb:
image: "mariadb:10.10.3"
container_name: "typeorm-mariadb"
ports:
- "3307:3306"
environment:
MYSQL_ROOT_PASSWORD: "admin"
MYSQL_USER: "test"
MYSQL_PASSWORD: "test"
MYSQL_DATABASE: "test"
# postgres
postgres:
# mdillon/postgis is postgres + PostGIS (only). if you need additional
# extensions, it's probably time to create a purpose-built image with all
# necessary extensions. sorry, and thanks for adding support for them!
image: "postgis/postgis:14-3.3"
container_name: "typeorm-postgres"
ports:
- "5432:5432"
environment:
POSTGRES_USER: "test"
POSTGRES_PASSWORD: "test"
POSTGRES_DB: "test"
# mssql
mssql:
image: "mcr.microsoft.com/mssql/server:2022-latest"
container_name: "typeorm-mssql"
ports:
- "1433:1433"
environment:
SA_PASSWORD: "Admin12345"
ACCEPT_EULA: "Y"
# cockroachdb
cockroachdb:
image: "cockroachdb/cockroach:v24.3.8"
container_name: "typeorm-cockroachdb"
command: "start-single-node --insecure --cache=.25 --store=type=mem,size=.25"
ports:
- "26257:26257"
# volumes:
# - cockroach-data:/cockroach/cockroach-data
# oracle
oracle:
image: "container-registry.oracle.com/database/free:23.5.0.0-lite"
container_name: "typeorm-oracle"
ports:
- "1521:1521"
environment:
ORACLE_PWD: "oracle"
ORACLE_SID: "FREE"
volumes:
# - oracle-data:/opt/oracle/oradata
- ./docker/oracle/startup:/opt/oracle/scripts/startup:ro
# google cloud spanner
spanner:
image: alexmesser/spanner-emulator
container_name: "typeorm-spanner"
ports:
- "9010:9010"
- "9020:9020"
# sap hana
# works only on linux, minimum 10GB RAM for docker required
hanaexpress:
image: "saplabs/hanaexpress:2.00.076.00.20240701.1"
container_name: "typeorm-hanaexpress"
hostname: hxe
command:
[
"--passwords-url",
"file:////hana/hxe-config.json",
"--agree-to-sap-license",
]
ulimits:
nofile: 1048576
sysctls:
- kernel.shmall=3145728 # System-wide limit of total shared memory, in 4k pages
- kernel.shmmax=1073741824 # Maximum shared memory segment sizes
- kernel.shmmni=4096 # Maximum number of shared memory segments
- net.ipv4.ip_local_port_range=40000 60999
volumes:
- volume-hana-xe:/hana/mounts
- ./docker/hana/hxe-config.json:/hana/hxe-config.json:ro
ports:
- "39041:39041"
healthcheck:
test: "/hana/shared/HXE/exe/linuxx86_64/hdb/hdbsql -n localhost:39041 -u SYSTEM -p HXEHana1 \"\\s\""
interval: 5s
# mongodb
mongodb:
image: "mongo:5.0.12"
container_name: "typeorm-mongodb"
ports:
- "27017:27017"
# redis
# redis:
# image: "redis:3.0.3"
# container_name: "typeorm-redis"
# ports:
# - "6379:6379"
volumes:
# cockroach-data:
# oracle-data:
volume-hana-xe: