Skip to content
Snippets Groups Projects
docker-compose.yml 1.89 KiB
Newer Older
  • Learn to ignore specific revisions
  • version: '3.3'
    
    name: birdsite_{{ birdsite.id }}
    
    networks:
      traefik-public:
        external: true
    
    services:
      app:
        image: nicolasconstant/birdsitelive:latest
        restart: unless-stopped
        networks:
          - traefik-public
          - default
        environment:
          - Instance:Domain={{ birdsite.domain }}
          - Instance:AdminEmail={{ birdsite.adminmail }}
          - Db:Type=postgres
          - Db:Host=db
          - Db:Name=birdsitelive
          - Db:User=birdsitelive
          - Db:Password=birdsitelive
          - Twitter:ConsumerKey={{ birdsite.twitter.key }}
          - Twitter:ConsumerSecret={{ birdsite.twitter.secret }}
    
    {% if birdsite.allowlist is defined %}
          - Moderation:FollowersWhiteListing={{ birdsite.allowlist|join(';') }}
    {% endif %}
    {% if birdsite.denylist is defined %}
          - Moderation:TwitterAccountsBlackListing={{ birdsite.denylist|join(';') }}
    {% endif %}
    
          - Instance:Name={{ birdsite.name }}
          - Instance:ResolveMentionsInProfiles=true
          - Instance:PublishReplies=true
          #            - Instance:UnlistedTwitterAccounts=cocacola;twitter
          #            - Instance:SensitiveTwitterAccounts=archillect
        volumes:
          - /etc/timezone:/etc/timezone:ro
          - /etc/localtime:/etc/localtime:ro
        labels:
          traefik.enable: 'true'
          traefik.docker.network: traefik-public
          traefik.http.services.birdsite_{{ birdsite.id }}.loadbalancer.server.port: 80
          traefik.http.routers.birdsite_{{ birdsite.id }}.rule: Host(`{{ birdsite.domain }}`)
          traefik.http.routers.birdsite_{{ birdsite.id }}.tls: 'true'
          traefik.http.routers.birdsite_{{ birdsite.id }}.tls.certresolver: lakedrops
    
      db:
        image: postgres:9.6
        restart: unless-stopped
        environment:
          - POSTGRES_USER=birdsitelive
          - POSTGRES_PASSWORD=birdsitelive
          - POSTGRES_DB=birdsitelive
        volumes:
          - '{{ appRoot }}/postgres:/var/lib/postgresql/data'
    
      borgmatic: {{ docker_compose_borgmatic_service }}