Files
LinkPort/deploy/compose.test.yml
T

157 lines
5.4 KiB
YAML

# Disposable integration targets only. All passwords below are public TEST credentials.
# No production directories or data volumes are mounted.
name: linkport-test
services:
cert-init:
build: ./fixtures
command: ["certs"]
volumes:
- fixture-certs:/certs
mysql57:
image: mysql:5.7.44
ports: ["127.0.0.1:13357:3306"]
environment:
MYSQL_ROOT_PASSWORD: linkport-test-password
MYSQL_ROOT_HOST: "%"
command: ["--ssl-ca=/certs/ca.pem", "--ssl-cert=/certs/server-cert.pem", "--ssl-key=/certs/server-key.pem", "--require-secure-transport=ON"]
volumes:
- fixture-certs:/certs:ro
tmpfs:
- /var/lib/mysql
depends_on:
cert-init:
condition: service_completed_successfully
healthcheck:
test: ["CMD-SHELL", "MYSQL_PWD=linkport-test-password mysqladmin ping -uroot --silent"]
interval: 5s
timeout: 5s
retries: 60
mysql80:
image: mysql:8.0.43
ports: ["127.0.0.1:13380:3306"]
environment:
MYSQL_ROOT_PASSWORD: linkport-test-password
MYSQL_ROOT_HOST: "%"
command: ["--ssl-ca=/certs/ca.pem", "--ssl-cert=/certs/server-cert.pem", "--ssl-key=/certs/server-key.pem", "--require-secure-transport=ON"]
volumes:
- fixture-certs:/certs:ro
tmpfs:
- /var/lib/mysql
depends_on:
cert-init:
condition: service_completed_successfully
healthcheck:
test: ["CMD-SHELL", "MYSQL_PWD=linkport-test-password mysqladmin ping -uroot --silent"]
interval: 5s
timeout: 5s
retries: 60
mysql84:
image: mysql:8.4.6
ports: ["127.0.0.1:13384:3306"]
environment:
MYSQL_ROOT_PASSWORD: linkport-test-password
MYSQL_ROOT_HOST: "%"
command: ["--ssl-ca=/certs/ca.pem", "--ssl-cert=/certs/server-cert.pem", "--ssl-key=/certs/server-key.pem", "--require-secure-transport=ON"]
volumes:
- fixture-certs:/certs:ro
tmpfs:
- /var/lib/mysql
depends_on:
cert-init:
condition: service_completed_successfully
healthcheck:
test: ["CMD-SHELL", "MYSQL_PWD=linkport-test-password mysqladmin ping -uroot --silent"]
interval: 5s
timeout: 5s
retries: 60
mongo60:
image: mongo:6.0.26
ports: ["127.0.0.1:27060:27017"]
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: linkport-test-password
command: ["mongod", "--bind_ip_all", "--tlsMode", "requireTLS", "--tlsCertificateKeyFile", "/certs/mongo.pem", "--tlsCAFile", "/certs/ca.pem", "--tlsAllowConnectionsWithoutCertificates"]
volumes:
- fixture-certs:/certs:ro
tmpfs:
- /data/db
- /data/configdb
depends_on:
cert-init:
condition: service_completed_successfully
healthcheck:
test: ["CMD", "mongosh", "--quiet", "--host", "localhost", "--tls", "--tlsCAFile", "/certs/ca.pem", "-u", "root", "-p", "linkport-test-password", "--authenticationDatabase", "admin", "--eval", "db.adminCommand({ping:1})"]
interval: 5s
timeout: 5s
retries: 60
mongo70:
image: mongo:7.0.24
ports: ["127.0.0.1:27070:27017"]
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: linkport-test-password
command: ["mongod", "--bind_ip_all", "--tlsMode", "requireTLS", "--tlsCertificateKeyFile", "/certs/mongo.pem", "--tlsCAFile", "/certs/ca.pem", "--tlsAllowConnectionsWithoutCertificates"]
volumes:
- fixture-certs:/certs:ro
tmpfs:
- /data/db
- /data/configdb
depends_on:
cert-init:
condition: service_completed_successfully
healthcheck:
test: ["CMD", "mongosh", "--quiet", "--host", "localhost", "--tls", "--tlsCAFile", "/certs/ca.pem", "-u", "root", "-p", "linkport-test-password", "--authenticationDatabase", "admin", "--eval", "db.adminCommand({ping:1})"]
interval: 5s
timeout: 5s
retries: 60
mongo80:
image: mongo:8.0.13
ports: ["127.0.0.1:27080:27017"]
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: linkport-test-password
entrypoint: ["bash", "/fixture-start.sh"]
volumes:
- fixture-certs:/certs:ro
- ./mongo/start-replica.sh:/fixture-start.sh:ro
tmpfs:
- /data/db
- /data/configdb
depends_on:
cert-init:
condition: service_completed_successfully
healthcheck:
test: ["CMD", "mongosh", "--quiet", "--host", "localhost", "--tls", "--tlsCAFile", "/certs/ca.pem", "-u", "root", "-p", "linkport-test-password", "--authenticationDatabase", "admin", "--eval", "db.adminCommand({ping:1})"]
interval: 5s
timeout: 5s
retries: 60
mongo80-init:
image: mongo:8.0.13
profiles: ["replica-init"]
entrypoint: ["mongosh", "--quiet", "--host", "mongo80", "--tls", "--tlsCAFile", "/certs/ca.pem", "-u", "root", "-p", "linkport-test-password", "--authenticationDatabase", "admin", "/init-replica.js"]
volumes:
- fixture-certs:/certs:ro
- ./mongo/init-replica.js:/init-replica.js:ro
depends_on:
mongo80:
condition: service_healthy
ssh:
build: ./ssh
ports: ["127.0.0.1:12222:22"]
healthcheck:
test: ["CMD", "/usr/sbin/sshd", "-t"]
interval: 5s
timeout: 5s
retries: 12
socks-open:
build: ./fixtures
ports: ["127.0.0.1:11080:1080"]
socks-auth:
build: ./fixtures
environment:
SOCKS_USER: socks
SOCKS_PASSWORD: socks-test-password
ports: ["127.0.0.1:11081:1080"]
volumes:
fixture-certs: