aboutsummaryrefslogtreecommitdiff
path: root/docker-compose.env.yaml
blob: 51af0fde4c7ff0e649f0f69326052e9313323499 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
version: '3'

networks:
  nginx-proxy-network:

services:
  nginx-proxy:
    image: jwilder/nginx-proxy
    container_name: nginx-proxy
    restart: always
    ports:
      - '80:80'
      - '443:443'
    volumes:
      - /var/run/docker.sock:/tmp/docker.sock:ro
      - "${VOLUME_HOME}/docker/nginx-proxy/vhost:/etc/nginx/vhost.d"
      - "${VOLUME_HOME}/docker/nginx-proxy/html:/usr/share/nginx/html"
      - "${VOLUME_HOME}/docker/nginx-proxy/certs:/etc/nginx/certs:ro"
      - "${VOLUME_HOME}/docker/nginx-proxy/conf:/etc/nginx/conf.d"
      - "${VOLUME_HOME}/docker/nginx-proxy/dhparam:/etc/nginx/dhparam"
    networks:
      - nginx-proxy-network

  letsencrypt:
    image: jrcs/letsencrypt-nginx-proxy-companion
    container_name: letsencrypt-nginx-proxy-companion
    restart: always
    volumes:
      - "${VOLUME_HOME}/docker/nginx-proxy/certs:/etc/nginx/certs"
      - "${VOLUME_HOME}/docker/nginx-proxy/vhost:/etc/nginx/vhost.d"
      - "${VOLUME_HOME}/docker/nginx-proxy/html:/usr/share/nginx/html"
      - "${VOLUME_HOME}/docker/nginx-proxy/dhparam:/etc/nginx/dhparam:ro"
      - /var/run/docker.sock:/var/run/docker.sock:ro
    depends_on:
      - nginx-proxy
    environment:
      - NGINX_PROXY_CONTAINER=nginx-proxy
    networks:
      - nginx-proxy-network

  static:
    image: nginx
    container_name: static-nginx
    restart: always
    volumes:
      - "${VOLUME_HOME}/static:/usr/share/nginx/html"
    ports:
      - "${STATIC_PORT}:80"
    environment:
      - VIRTUAL_HOST=${STATIC_TLD}
      - VIRTUAL_PORT=${STATIC_PORT}
      - LETSENCRYPT_HOST=${STATIC_TLD}
      - LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
    networks:
      - nginx-proxy-network

  nextcloud:
    image: nextcloud:latest
    container_name: nextcloud
    restart: always
    volumes:
      - "${VOLUME_HOME}/applications/nextcloud/data:/var/www/html"
      - "${VOLUME_HOME}/applications/nextcloud/config:/var/www/config"
      - "${VOLUME_HOME}/applications/nextcloud/apps:/var/www/apps"
    ports:
      - "${NEXTCLOUD_PORT}:80"
    environment:
      - SQLITE_DATABASE=my-nextcloud-database.sqlite
      - NEXTCLOUD_UPDATE=1
      - NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
      - NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
      - NEXTCLOUD_TABLE_PREFIX=${NEXTCLOUD_TABLE_PREFIX}
      - NEXTCLOUD_HOSTNAME=${NEXTCLOUD_TLD}
      - NEXTCLOUD_TRUSTED_DOMAINS=${NEXTCLOUD_TLD}
      - VIRTUAL_HOST=${NEXTCLOUD_TLD}
      - VIRTUAL_PORT=${NEXTCLOUD_PORT}
      - LETSENCRYPT_HOST=${NEXTCLOUD_TLD}
      - LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
    networks:
      - nginx-proxy-network

  gpodder:
    build:
      context: ./dockerfiles/gpodder
    container_name: gpodder
    restart: always
    volumes:
      - "${VOLUME_HOME}/applications/gpodder/mygpo:/usr/src/mygpo"
    ports:
      - "${GPODDER_PORT}:8000"
    environment:
      - VIRTUAL_HOST=${GPODDER_TLD}
      - VIRTUAL_PORT=${GPODDER_PORT}
      - LETSENCRYPT_HOST=${GPODDER_TLD}
      - LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
    networks:
      - nginx-proxy-network