diff --git a/compose.yml b/compose.yml index 213ec1827..1402abccf 100644 --- a/compose.yml +++ b/compose.yml @@ -4,39 +4,6 @@ networks: external: true x-django: &django - environment: - - DEBUG - - DEFAULT_FROM_EMAIL - - - DJANGO_SETTINGS_MODULE - - DJANGO_SECRET_KEY - - - EXTERNAL_REQUESTS_VERIFY_SSL - - - 'FORCE_HTTPS_URLS=${FORCE_HTTPS_URLS:-False}' - - FUNKWHALE_PROTOCOL - - 'FUNKWHALE_HOSTNAME=${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}' - - - DATABASE_URL - - CACHE_URL - - EMAIL_CONFIG - - TYPESENSE_API_KEY - - - 'STATIC_URL=${FUNKWHALE_PROTOCOL}://${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}/static/' - - 'MEDIA_URL=${FUNKWHALE_PROTOCOL}://${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}/media/' - - - STATIC_ROOT - - MEDIA_ROOT - - - FUNKWHALE_SPA_HTML_ROOT - - LDAP_ENABLED - - BROWSABLE_API_ENABLED - - 'MUSIC_DIRECTORY_PATH=${MUSIC_DIRECTORY_PATH:-/music}' - - - C_FORCE_ROOT - - PYTHONDONTWRITEBYTECODE - - PYTHONTRACEMALLOC - dns: 172.17.0.1 dns_search: funkwhale.test @@ -46,14 +13,17 @@ services: context: ./front dockerfile: Dockerfile.dev ports: - - '${VUE_PORT:-8080}:${VUE_PORT:-8080}' + - "${VUE_PORT:-8080}:${VUE_PORT:-8080}" environment: + - HOST - VUE_PORT volumes: - - './front:/app' - - '/app/node_modules' + - "./front:/app" + - "/app/node_modules" + - "./po:/po" networks: - internal + command: "yarn dev --host" api: extends: @@ -72,8 +42,8 @@ services: file: ./compose/app.nginx.yml service: nginx environment: - - 'MUSIC_DIRECTORY_PATH=${MUSIC_DIRECTORY_PATH:-/music}' - - 'FUNKWHALE_HOSTNAME=${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}' + - "MUSIC_DIRECTORY_PATH=${MUSIC_DIRECTORY_PATH:-/music}" + - "FUNKWHALE_HOSTNAME=${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}" - FUNKWHALE_PROTOCOL @@ -86,34 +56,34 @@ services: - NGINX_MAX_BODY_SIZE - STATIC_ROOT - - 'MEDIA_ROOT=${MEDIA_ROOT:-/data/media}' + - "MEDIA_ROOT=${MEDIA_ROOT:-/data/media}" networks: - web - internal labels: - - 'traefik.enable=true' + - "traefik.enable=true" - - 'traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-web.rule=Host(`${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}`)' - - 'traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-web.entrypoints=web' + - "traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-web.rule=Host(`${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}`)" + - "traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-web.entrypoints=web" - - 'traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-webs.rule=Host(`${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}`)' - - 'traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-webs.entrypoints=webs' + - "traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-webs.rule=Host(`${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}`)" + - "traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-webs.entrypoints=webs" - - 'traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-webs.tls=true' - - 'traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-webs.tls.domains[0].main=${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}' + - "traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-webs.tls=true" + - "traefik.http.routers.test-funkwhale-${COMPOSE_PROJECT_NAME:-funkwhale}-webs.tls.domains[0].main=${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}" postgres: - image: 'postgres:${POSTGRES_VERSION:-15}-alpine' + image: "postgres:${POSTGRES_VERSION:-15}-alpine" environment: - POSTGRES_HOST_AUTH_METHOD command: postgres ${POSTGRES_ARGS:-} volumes: - - './.state/${COMPOSE_PROJECT_NAME:-funkwhale}/postgres:/var/lib/postgresql/data' + - "./.state/${COMPOSE_PROJECT_NAME:-funkwhale}/postgres:/var/lib/postgresql/data" networks: - internal healthcheck: - test: ['CMD-SHELL', 'pg_isready -U postgres'] + test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 10s timeout: 5s retries: 5 @@ -121,11 +91,11 @@ services: redis: image: redis:7-alpine volumes: - - './.state/${COMPOSE_PROJECT_NAME:-funkwhale}/redis:/data' + - "./.state/${COMPOSE_PROJECT_NAME:-funkwhale}/redis:/data" networks: - internal healthcheck: - test: ['CMD', 'redis-cli', 'ping'] + test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 3 diff --git a/compose/app.django.yml b/compose/app.django.yml index fdb672ff9..16360ec29 100644 --- a/compose/app.django.yml +++ b/compose/app.django.yml @@ -1,5 +1,7 @@ x-django: &django image: funkwhale-api + networks: + - internal volumes: - ../api:/app - ../.env:/app/.env @@ -13,8 +15,38 @@ x-django: &django condition: service_healthy redis: condition: service_healthy - networks: - - internal + environment: + - DEBUG + - DEFAULT_FROM_EMAIL + + - DJANGO_SETTINGS_MODULE + - DJANGO_SECRET_KEY + + - EXTERNAL_REQUESTS_VERIFY_SSL + + - "FORCE_HTTPS_URLS=${FORCE_HTTPS_URLS:-False}" + - FUNKWHALE_PROTOCOL + - "FUNKWHALE_HOSTNAME=${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}" + + - DATABASE_URL + - CACHE_URL + - EMAIL_CONFIG + - TYPESENSE_API_KEY + + - "STATIC_URL=${FUNKWHALE_PROTOCOL}://${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}/static/" + - "MEDIA_URL=${FUNKWHALE_PROTOCOL}://${COMPOSE_PROJECT_NAME:-funkwhale}.${FUNKWHALE_DOMAIN}/media/" + + - STATIC_ROOT + - MEDIA_ROOT + + - FUNKWHALE_SPA_HTML_ROOT + - LDAP_ENABLED + - BROWSABLE_API_ENABLED + - "MUSIC_DIRECTORY_PATH=${MUSIC_DIRECTORY_PATH:-/music}" + + - C_FORCE_ROOT + - PYTHONDONTWRITEBYTECODE + - PYTHONTRACEMALLOC services: api: