2020-02-19 04:55:06 +00:00
|
|
|
# WARNING: This is a CI docker-compose file used for building and testing of the entire app, it should not be used for production.
|
2023-05-10 23:58:20 +00:00
|
|
|
version: '3.8'
|
2020-02-19 04:55:06 +00:00
|
|
|
services:
|
|
|
|
|
2022-05-11 22:47:31 +00:00
|
|
|
fullstack:
|
|
|
|
image: ${IMAGE}:${BRANCH_LOWER}-ci-${BUILD_NUMBER}
|
2020-02-19 04:55:06 +00:00
|
|
|
environment:
|
2022-05-11 22:47:31 +00:00
|
|
|
- NPM_LOG_LEVEL=debug
|
2023-02-25 12:58:38 +00:00
|
|
|
- NPM_LOG_FORMAT=json
|
2023-05-11 23:40:45 +00:00
|
|
|
- NPM_DISABLE_IPV6=true
|
2020-02-19 04:55:06 +00:00
|
|
|
volumes:
|
2022-05-11 22:47:31 +00:00
|
|
|
- '/etc/localtime:/etc/localtime:ro'
|
|
|
|
- npm_data_ci:/data
|
|
|
|
- ../docs:/temp-docs
|
|
|
|
- ./dev/resolv.conf:/etc/resolv.conf:ro
|
|
|
|
networks:
|
|
|
|
default:
|
|
|
|
aliases:
|
|
|
|
- website1.example.com
|
|
|
|
- website2.example.com
|
|
|
|
- website3.example.com
|
2020-02-19 04:55:06 +00:00
|
|
|
|
2022-05-11 22:47:31 +00:00
|
|
|
stepca:
|
2023-03-15 05:28:28 +00:00
|
|
|
image: jc21/testca
|
2020-08-05 22:58:20 +00:00
|
|
|
volumes:
|
2022-05-11 22:47:31 +00:00
|
|
|
- ./dev/resolv.conf:/etc/resolv.conf:ro
|
|
|
|
- '/etc/localtime:/etc/localtime:ro'
|
|
|
|
networks:
|
|
|
|
default:
|
|
|
|
aliases:
|
|
|
|
- ca.internal
|
2020-08-05 22:58:20 +00:00
|
|
|
|
2022-05-11 22:47:31 +00:00
|
|
|
pdns:
|
|
|
|
image: pschiffe/pdns-mysql
|
2020-02-19 04:55:06 +00:00
|
|
|
volumes:
|
2022-05-11 22:47:31 +00:00
|
|
|
- '/etc/localtime:/etc/localtime:ro'
|
|
|
|
environment:
|
|
|
|
PDNS_master: 'yes'
|
|
|
|
PDNS_api: 'yes'
|
|
|
|
PDNS_api_key: 'npm'
|
|
|
|
PDNS_webserver: 'yes'
|
|
|
|
PDNS_webserver_address: '0.0.0.0'
|
|
|
|
PDNS_webserver_password: 'npm'
|
|
|
|
PDNS_webserver-allow-from: '127.0.0.0/8,192.0.0.0/8,10.0.0.0/8,172.0.0.0/8'
|
|
|
|
PDNS_version_string: 'anonymous'
|
|
|
|
PDNS_default_ttl: 1500
|
|
|
|
PDNS_allow_axfr_ips: '127.0.0.0/8,192.0.0.0/8,10.0.0.0/8,172.0.0.0/8'
|
|
|
|
PDNS_gmysql_host: pdns-db
|
|
|
|
PDNS_gmysql_port: 3306
|
|
|
|
PDNS_gmysql_user: pdns
|
|
|
|
PDNS_gmysql_password: pdns
|
|
|
|
PDNS_gmysql_dbname: pdns
|
|
|
|
depends_on:
|
|
|
|
- pdns-db
|
|
|
|
networks:
|
|
|
|
default:
|
|
|
|
aliases:
|
|
|
|
- ns1.pdns
|
|
|
|
- ns2.pdns
|
2020-02-19 04:55:06 +00:00
|
|
|
|
2022-05-11 22:47:31 +00:00
|
|
|
pdns-db:
|
|
|
|
image: mariadb
|
2020-02-19 04:55:06 +00:00
|
|
|
environment:
|
2022-05-11 22:47:31 +00:00
|
|
|
MYSQL_ROOT_PASSWORD: 'pdns'
|
|
|
|
MYSQL_DATABASE: 'pdns'
|
|
|
|
MYSQL_USER: 'pdns'
|
|
|
|
MYSQL_PASSWORD: 'pdns'
|
2020-08-06 01:26:37 +00:00
|
|
|
volumes:
|
2022-05-11 22:47:31 +00:00
|
|
|
- pdns_mysql_vol:/var/lib/mysql
|
|
|
|
- '/etc/localtime:/etc/localtime:ro'
|
2023-02-25 15:17:34 +00:00
|
|
|
- './dev/pdns-db.sql:/docker-entrypoint-initdb.d/01_init.sql:ro'
|
2022-05-11 22:47:31 +00:00
|
|
|
|
|
|
|
dnsrouter:
|
|
|
|
image: jc21/dnsrouter
|
|
|
|
volumes:
|
|
|
|
- ./dev/dnsrouter-config.json.tmp:/dnsrouter-config.json:ro
|
2020-08-06 01:26:37 +00:00
|
|
|
|
2022-05-11 22:47:31 +00:00
|
|
|
cypress:
|
2020-08-06 01:26:37 +00:00
|
|
|
image: ${IMAGE}-cypress:ci-${BUILD_NUMBER}
|
|
|
|
build:
|
2022-05-11 22:47:31 +00:00
|
|
|
context: ../
|
|
|
|
dockerfile: test/cypress/Dockerfile
|
2020-08-06 01:26:37 +00:00
|
|
|
environment:
|
2022-05-11 22:47:31 +00:00
|
|
|
CYPRESS_baseUrl: "http://fullstack:81"
|
2020-02-19 04:55:06 +00:00
|
|
|
volumes:
|
|
|
|
- cypress-logs:/results
|
2022-05-11 22:47:31 +00:00
|
|
|
- ./dev/resolv.conf:/etc/resolv.conf:ro
|
2020-02-19 04:55:06 +00:00
|
|
|
command: cypress run --browser chrome --config-file=${CYPRESS_CONFIG:-cypress/config/ci.json}
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
cypress-logs:
|
2022-05-11 22:47:31 +00:00
|
|
|
npm_data_ci:
|
|
|
|
pdns_mysql_vol:
|