ci(docker): include traefik routing and proxy to ensure server connections pass in local

This commit is contained in:
Amruth Pillai 2022-03-12 15:55:04 +01:00
parent 528ac84d3b
commit 11cb066573
No known key found for this signature in database
GPG Key ID: E3C57DF9B80855AD
2 changed files with 28 additions and 7 deletions

View File

@ -11,6 +11,18 @@ services:
- ./scripts/database/initialize.sql:/docker-entrypoint-initdb.d/initialize.sql
- pgdata:/var/lib/postgresql/data
traefik:
image: traefik
container_name: traefik
command:
- --providers.docker=true
- --providers.docker.exposedbydefault=false
- --entrypoints.web.address=:80
ports:
- 80:80
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
server:
# Production
# image: amruthpillai/reactive-resume:server-latest
@ -22,12 +34,18 @@ services:
container_name: server
env_file: .env
environment:
- PUBLIC_URL=http://client:3000
- PUBLIC_URL=http://localhost
- POSTGRES_HOST=postgres
ports:
- 3100:3100
depends_on:
- traefik
- postgres
labels:
- traefik.enable=true
- traefik.http.routers.server.entrypoints=web
- traefik.http.routers.server.rule=Host(`localhost`) && PathPrefix(`/api/`)
- traefik.http.routers.server.middlewares=server-stripprefix
- traefik.http.middlewares.server-stripprefix.stripprefix.prefixes=/api
- traefik.http.middlewares.server-stripprefix.stripprefix.forceslash=true
client:
# Production
@ -40,11 +58,14 @@ services:
container_name: client
env_file: .env
environment:
- PUBLIC_SERVER_URL=http://server:3100
ports:
- 3000:3000
- PUBLIC_SERVER_URL=http://localhost/api
depends_on:
- traefik
- server
labels:
- traefik.enable=true
- traefik.http.routers.client.rule=Host(`localhost`)
- traefik.http.routers.client.entrypoints=web
volumes:
pgdata:

View File

@ -15,7 +15,7 @@ export class HealthController {
return this.health.check([
() => this.db.pingCheck('database'),
() => this.http.pingCheck('app', 'https://rxresu.me'),
() => this.http.pingCheck('docs', 'https://beta.rxresu.me'),
() => this.http.pingCheck('docs', 'https://docs.rxresu.me'),
]);
}
}