ft_transcendence/docker-compose.yml
Maieul BOYER 66537e2ccb feat(oauth2/user): Implementation of the whole oauth2 pipeline
Auth: user can now login with any oauth2 provider the config list
      account will be created on demands if not already created.
      any oauth2 account is unique (can't link an account to any other
      auth method)
2025-10-28 13:47:20 +01:00

94 lines
2.3 KiB
YAML

networks:
transcendance-network:
driver: bridge
services:
#
# The "entry point" as in it does all of this:
# - serve files (images, static files, video)
# - redirect request to appropirate service (reverse proxy)
# - be the one that handles TLS/SSL (basically HTTPS)
# - other stuff I don't know yet
nginx:
build: ./nginx
container_name: nginx
restart: always
networks:
- transcendance-network
ports:
- '8888:443'
volumes:
# if you need to share files with nginx, you do it here.
- static-volume:/volumes/static
- images-volume:/volumes/icons
environment:
# this can stay the same for developpement. This is an alias to `localhost`
- NGINX_DOMAIN=local.maix.me
###############
# ICONS #
###############
icons:
build:
context: ./src/
args:
- SERVICE=icons
#- EXTRA_FILES=icons/extra
container_name: icons
restart: always
networks:
- transcendance-network
volumes:
- images-volume:/volumes/store
- sqlite-volume:/volumes/database
environment:
- JWT_SECRET=KRUGKIDROVUWG2ZAMJZG653OEBTG66BANJ2W24DTEBXXMZLSEB2GQZJANRQXU6JA
- USER_ICONS_STORE=/volumes/store
- DATABASE_DIR=/volumes/database
###############
# AUTH #
###############
auth:
build:
context: ./src/
args:
- SERVICE=auth
- EXTRA_FILES=auth/extra
container_name: auth
restart: always
networks:
- transcendance-network
volumes:
- sqlite-volume:/volumes/database
- static-volume:/volumes/static
environment:
- JWT_SECRET=KRUGKIDROVUWG2ZAMJZG653OEBTG66BANJ2W24DTEBXXMZLSEB2GQZJANRQXU6JA
- DATABASE_DIR=/volumes/database
- PROVIDER_FILE=/extra/providers.toml
###############
# USER #
###############
user:
build:
context: ./src/
args:
- SERVICE=user
# - EXTRA_FILES=user/extra
container_name: user
restart: always
networks:
- transcendance-network
volumes:
- sqlite-volume:/volumes/database
- static-volume:/volumes/static
environment:
- JWT_SECRET=KRUGKIDROVUWG2ZAMJZG653OEBTG66BANJ2W24DTEBXXMZLSEB2GQZJANRQXU6JA
- DATABASE_DIR=/volumes/database
volumes:
images-volume:
sqlite-volume:
static-volume: