version: '3' services: wallabag: image: wallabag/wallabag environment: - POSTGRES_PASSWORD=${PG_PASSWORD} - POSTGRES_USER=postgres - SYMFONY__ENV__DATABASE_DRIVER=pdo_pgsql - SYMFONY__ENV__DATABASE_DRIVER_CLASS=Wallabag\CoreBundle\Doctrine\DBAL\Driver\CustomPostgreSQLDriver - SYMFONY__ENV__DATABASE_HOST=db - SYMFONY__ENV__DATABASE_PORT=5432 - SYMFONY__ENV__DATABASE_NAME=wallabag - SYMFONY__ENV__DATABASE_USER=wallabag - SYMFONY__ENV__DATABASE_PASSWORD=${WB_PASSWORD} - SYMFONY__ENV__MAILER_HOST=smtp - SYMFONY__ENV__MAILER_USER=~ - SYMFONY__ENV__MAILER_PASSWORD=~ - SYMFONY__ENV__FROM_EMAIL=wallabag@space.abhinavsarkar.net - SYMFONY__ENV__DOMAIN_NAME=https://bookmarks.abhinavsarkar.net depends_on: - db - smtp volumes: - ./wallabag/images:/var/www/wallabag/web/assets/images db: image: postgres:10 restart: always environment: POSTGRES_PASSWORD: ${PG_PASSWORD} volumes: - ./postgres-data:/var/lib/postgresql/data nginx: image: nginx:1.15 environment: - NGINX_HOST=space.abhinavsarkar.net - NGINX_PORT=80 depends_on: - wallabag - gitea ports: - "80:80" - "443:443" volumes: - ./nginx-conf:/etc/nginx/conf.d:ro - ./nginx-log:/var/log/nginx - ./certs:/etc/nginx/certs:ro smtp: build: context: ./smtp environment: MAILNAME: space.abhinavsarkar.net pihole: image: diginc/pi-hole:debian_v3.3.1 environment: ServerIP: ${PH_SERVER_IP} WEBPASSWORD: ${PH_PASSWORD} DNS1: 1.1.1.1 DNS2: 1.0.0.1 VIRTUAL_HOST: pihole.abhinavsarkar.net ports: - "53:53/tcp" - "53:53/udp" restart: unless-stopped volumes: - ./pihole-data/pihole:/etc/pihole - ./pihole-data/dnsmasq:/etc/dnsmasq.d gitea: image: gitea/gitea:1.4.2 environment: APP_NAME: "Code dot abhinavsarkar.net" RUN_MODE: prod SSH_DOMAIN: code.abhinavsarkar.net SSH_PORT: 222 DB_TYPE: postgres DB_HOST: "db:5432" DB_USER: postgres DB_PASSWD: ${PG_PASSWORD} INSTALL_LOCK: "false" SECRET_KEY: ${GT_SECRET_KEY} restart: always volumes: - ./gitea-data:/data ports: - "222:22" depends_on: - db site: image: abhin4v/abhinavsarkar.net:latest hooks: build: context: ./webhooks volumes: - /var/run/docker.sock:/var/run/docker.sock - .:/opt/space