# WARNING: This is a CI docker-compose file used for building and testing of the entire app, it should not be used for production. version: "3" services: fullstack-mysql: image: ${IMAGE}:ci-${BUILD_NUMBER} environment: NODE_ENV: "development" FORCE_COLOR: 1 DB_MYSQL_HOST: "db" DB_MYSQL_PORT: 3306 DB_MYSQL_USER: "npm" DB_MYSQL_PASSWORD: "npm" DB_MYSQL_NAME: "npm" volumes: - npm_data:/data expose: - 81 - 80 - 443 depends_on: - db healthcheck: test: ["CMD", "/bin/check-health"] interval: 10s timeout: 3s fullstack-sqlite: image: ${IMAGE}:ci-${BUILD_NUMBER} environment: NODE_ENV: "development" FORCE_COLOR: 1 DB_SQLITE_FILE: "/data/database.sqlite" volumes: - npm_data:/data expose: - 81 - 80 - 443 healthcheck: test: ["CMD", "/bin/check-health"] interval: 10s timeout: 3s db: image: jc21/mariadb-aria environment: MYSQL_ROOT_PASSWORD: "npm" MYSQL_DATABASE: "npm" MYSQL_USER: "npm" MYSQL_PASSWORD: "npm" volumes: - db_data:/var/lib/mysql cypress-mysql: image: ${IMAGE}-cypress:ci-${BUILD_NUMBER} build: context: ../test/ dockerfile: cypress/Dockerfile environment: CYPRESS_baseUrl: "http://fullstack-mysql:81" volumes: - cypress-logs:/results command: cypress run --browser chrome --config-file=${CYPRESS_CONFIG:-cypress/config/ci.json} cypress-sqlite: image: ${IMAGE}-cypress:ci-${BUILD_NUMBER} build: context: ../test/ dockerfile: cypress/Dockerfile environment: CYPRESS_baseUrl: "http://fullstack-sqlite:81" volumes: - cypress-logs:/results command: cypress run --browser chrome --config-file=${CYPRESS_CONFIG:-cypress/config/ci.json} volumes: cypress-logs: npm_data: db_data: