91 lines
2.3 KiB
YAML
91 lines
2.3 KiB
YAML
version: "3.9"
|
|
services:
|
|
client-react-vite:
|
|
image: client-react-vite
|
|
build:
|
|
context: ../05-example-web-application/client-react/
|
|
dockerfile: ../../06-building-container-images/client-react/Dockerfile.3
|
|
init: true
|
|
volumes:
|
|
- type: bind
|
|
source: ../05-example-web-application/client-react/
|
|
target: /usr/src/app/
|
|
- type: volume
|
|
target: /usr/src/app/node_modules
|
|
- type: bind
|
|
source: ../08-running-containers/client-react/vite.config.js
|
|
target: /usr/src/app/vite.config.js
|
|
networks:
|
|
- frontend
|
|
ports:
|
|
- 5173:5173
|
|
client-react-nginx:
|
|
image: client-react-nginx
|
|
build:
|
|
context: ../05-example-web-application/client-react/
|
|
dockerfile: ../../06-building-container-images/client-react/Dockerfile.5
|
|
init: true
|
|
networks:
|
|
- frontend
|
|
ports:
|
|
- 80:8080
|
|
restart: unless-stopped
|
|
api-node:
|
|
image: api-node
|
|
build:
|
|
context: ../05-example-web-application/api-node/
|
|
dockerfile: ../../06-building-container-images/api-node/Dockerfile.9
|
|
target: dev
|
|
init: true
|
|
volumes:
|
|
- type: bind
|
|
source: ../05-example-web-application/api-node/
|
|
target: /usr/src/app/
|
|
- type: volume
|
|
target: /usr/src/app/node_modules
|
|
depends_on:
|
|
- db
|
|
environment:
|
|
- DATABASE_URL=postgres://postgres:foobarbaz@db:5432/postgres
|
|
networks:
|
|
- frontend
|
|
- backend
|
|
ports:
|
|
- 3000:3000
|
|
restart: unless-stopped
|
|
api-golang:
|
|
image: api-golang
|
|
build:
|
|
context: ../05-example-web-application/api-golang/
|
|
dockerfile: ../../06-building-container-images/api-golang/Dockerfile.8
|
|
target: dev
|
|
init: true
|
|
volumes:
|
|
- type: bind
|
|
source: ../05-example-web-application/api-golang/
|
|
target: /app/
|
|
depends_on:
|
|
- db
|
|
environment:
|
|
- DATABASE_URL=postgres://postgres:foobarbaz@db:5432/postgres
|
|
networks:
|
|
- frontend
|
|
- backend
|
|
ports:
|
|
- 8080:8080
|
|
restart: unless-stopped
|
|
db:
|
|
image: postgres:15.1-alpine
|
|
volumes:
|
|
- pgdata:/var/lib/postgresql/data
|
|
environment:
|
|
- POSTGRES_PASSWORD=foobarbaz
|
|
networks:
|
|
- backend
|
|
ports:
|
|
- 5432:5432
|
|
volumes:
|
|
pgdata:
|
|
networks:
|
|
frontend:
|
|
backend: |