services: planka: image: ghcr.io/plankanban/planka:latest container_name: planka-planka restart: on-failure volumes: - user-avatars:/app/public/user-avatars - project-background-images:/app/public/project-background-images - attachments:/app/private/attachments ports: - 9631:1337 env_file: - .env environment: - BASE_URL=${BASE_URL} - DATABASE_URL=postgresql://postgres@postgres/planka - SECRET_KEY=${SECRET_KEY} # - TRUST_PROXY=0 # - TOKEN_EXPIRES_IN=365 # In days # related: https://github.com/knex/knex/issues/2354 # As knex does not pass query parameters from the connection string we # have to use environment variables in order to pass the desired values, e.g. # - PGSSLMODE= # Configure knex to accept SSL certificates # - KNEX_REJECT_UNAUTHORIZED_SSL_CERTIFICATE=false - DEFAULT_ADMIN_EMAIL=${DEFAULT_ADMIN_EMAIL} # Do not remove if you want to prevent this user from being edited/deleted - DEFAULT_ADMIN_PASSWORD=${DEFAULT_ADMIN_PASSWORD} - DEFAULT_ADMIN_NAME=${DEFAULT_ADMIN_NAME} - DEFAULT_ADMIN_USERNAME=${DEFAULT_ADMIN_USERNAME} # - ALLOW_ALL_TO_CREATE_PROJECTS=true # - OIDC_ISSUER=on-failure, "cardUpdate", "cardDelete"], # "excludedEvents": ["notificationCreate", "notificationUpdate"] # }] # - SLACK_BOT_TOKEN= # - SLACK_CHANNEL_ID= depends_on: postgres: condition: service_healthy postgres: image: postgres:14-alpine container_name: planka-postgres restart: on-failure volumes: - db-data:/var/lib/postgresql/data environment: - POSTGRES_DB=planka - POSTGRES_HOST_AUTH_METHOD=trust healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres -d planka"] interval: 10s timeout: 5s retries: 5 volumes: user-avatars: project-background-images: attachments: db-data: