version: '3.8' services: app: build: context: . dockerfile: docker/app.Dockerfile init: true # Overrides default command so things don't shut down after the process ends. command: sleep infinity # Runs app on the same network as the database container, allows "forwardPorts" in devcontainer.json function. # network_mode: service:db depends_on: - db - mq ipc: host environment: DISPLAY: host.docker.internal:0 # USER: django # UID: 1001 # GID: 1001 # DATADIR: data # DJANGO_SETTINGS_MODULE: settings_sqlitetest # Uncomment the next line to use a non-root user for all processes. # user: dev # Use "forwardPorts" in **devcontainer.json** to forward an app port locally. # (Adding the "ports" property to this file will not forward from a Codespace.) db: image: ghcr.io/ietf-tools/datatracker-db:latest # build: # context: .. # dockerfile: docker/db.Dockerfile restart: unless-stopped volumes: - mariadb-data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: RkTkDPFnKpko MYSQL_DATABASE: ietf_utf8 MYSQL_USER: django MYSQL_PASSWORD: RkTkDPFnKpko command: - '--character-set-server=utf8' - '--collation-server=utf8_unicode_ci' - '--innodb-buffer-pool-size=1G' - '--innodb-log-buffer-size=128M' - '--innodb-log-file-size=256M' - '--innodb-write-io-threads=8' - '--innodb-flush-log-at-trx-commit=0' - '--performance-schema=1' # Add "forwardPorts": ["5432"] to **devcontainer.json** to forward PostgreSQL locally. # (Adding the "ports" property to this file will not forward from a Codespace.) mq: image: rabbitmq:3-alpine restart: unless-stopped celery: image: ghcr.io/ietf-tools/datatracker-celery:latest init: true environment: CELERY_APP: ietf CELERY_ROLE: worker UPDATE_REQUIREMENTS_FROM: requirements.txt command: - '--loglevel=INFO' depends_on: - db restart: unless-stopped stop_grace_period: 1m volumes: - .:/workspace - app-assets:/assets # Celery Beat is a periodic task runner. It is not normally needed for development, # but can be enabled by uncommenting the following. # # beat: # image: ghcr.io/ietf-tools/datatracker-celery:latest # init: true # environment: # CELERY_APP: ietf # CELERY_ROLE: beat # UPDATE_REQUIREMENTS_FROM: requirements.txt # command: # - '--loglevel=INFO' # depends_on: # - db # restart: unless-stopped # stop_grace_period: 1m # volumes: # - .:/workspace volumes: mariadb-data: app-assets: