# Docker Compose file for the AliasVault all-in-one container
#
# This is the general purpose template which uses local folder bind mounts for the database, logs and secrets.
# - For NAS devices, its safer to use the docker-compose.all-in-one.nas.yml template instead.
#
services:
  aliasvault:
    image: ghcr.io/aliasvault/aliasvault:latest
    container_name: aliasvault
    restart: unless-stopped

    ports:
      - "80:80"
      - "443:443"
      - "25:25"
      - "587:587"

    volumes:
      - ./database:/database
      - ./logs:/logs
      - ./secrets:/secrets
      - ./certificates:/certificates

    environment:
      HOSTNAME: "localhost"
      PUBLIC_REGISTRATION_ENABLED: "true"
      IP_LOGGING_ENABLED: "true"
      FORCE_HTTPS_REDIRECT: "false"
      SUPPORT_EMAIL: ""
      PRIVATE_EMAIL_DOMAINS: ""
      HIDDEN_PRIVATE_EMAIL_DOMAINS: ""
