# Please see the full example under examples/docker-compose.example.yml # Pinned so the default network stays romm_default whatever the checkout # directory is named; docker-compose.oidc.yml and .streaming.yml join it. name: romm services: romm-dev: build: context: . dockerfile: Dockerfile container_name: romm-dev env_file: .env environment: - REDIS_HOST=romm-valkey-dev - DB_HOST=${DB_HOST:-romm-db-dev} - ROMM_BASE_PATH=/app/romm ports: - "3000:3000" # Vite dev server (custom) - "5173:5173" # Vite dev server (default) - "8443:8443" # HTTPS dev server - "5678:5678" # debugpy - "${DEV_PORT:-5000}:5000" # Backend API volumes: - ./backend:/app/backend - /app/backend/romm_mock # Empty directory - ./frontend:/app/frontend - /app/frontend/node_modules # Empty directory - /app/frontend/dist # Empty directory - ./romm_mock:/app/romm - ~/.vite-plugin-mkcert:/app/.vite-plugin-mkcert # Read-only, so the backend can report the checked-out branch (see # backend/utils/__init__.py get_git_branch) without git write access. - ./.git:/app/.git:ro depends_on: - romm-db-dev - romm-valkey-dev command: /bin/bash -c "cd /app && bash" stdin_open: true tty: true romm-db-dev: image: mariadb:13.0.2 container_name: romm-db-dev restart: unless-stopped env_file: .env environment: - MARIADB_ROOT_PASSWORD=${DB_ROOT_PASSWD:-rootpassword} - MARIADB_DATABASE=${DB_NAME:-romm} - MARIADB_USER=${DB_USER:-romm} - MARIADB_PASSWORD=${DB_PASSWD:-romm} volumes: - romm-db-dev:/var/lib/mysql ports: - "3306:3306" romm-valkey-dev: image: valkey/valkey:9.0.6 container_name: romm-valkey-dev restart: unless-stopped env_file: .env ports: - "${REDIS_PORT:-6379}:6379" volumes: romm-db-dev: