docker-skeleton.yml 2.58 KB
Newer Older
1
version: "3.5"
2
3
4

networks:
    habnet:
5
        name: habnet
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
        driver: overlay
        attachable: true
        
configs:
    backup_config:
        file: ./volumerize/backup_config.json
    sftp_config:
        file: ./ssh/sshd_config
    sftp_users:
        file: ./ssh/sftp_users.conf
    sftp_key_ed:
        file: ./ssh/ssh_host_ed25519_key
    sftp_id_pub:
        file: ./ssh/id_rsa.pub
    sftp_id_key:
        file: ./ssh/id_rsa
    sftp_known_hosts:
        file: ./ssh/known_hosts
    traefik_config:
        file: ./traefik/traefik.toml
    traefik_users:
        file: ./traefik/traefik_users
    nodered_settings:
        file: ./nodered/nodered_settings.js
    nodered_package:
        file: ./nodered/nodered_package.json
    mosquitto_passwords:
        file: ./mosquitto/mosquitto_passwords
    mosquitto_settings:
        file: ./mosquitto/mosquitto.conf
dobli's avatar
dobli committed
36
37
38
39
    postgres_user:
        file: ./postgres/user
    postgres_passwd:
        file: ./postgres/passwd
dobli's avatar
dobli committed
40
41
42
43
    landing_logo:
        file: ./pb-framr/logo.svg
    landing_pages:
        file: ./pb-framr/pages.json
Dobli's avatar
Dobli committed
44
45
    filebrowser:
        file: ./filebrowser/filebrowser.json
46
47
48
49

volumes:
    backup_data:
    backup_cache:
dobli's avatar
dobli committed
50

51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
    
services:
    proxy:
        image: "traefik"
        command: --api --docker --docker.swarmMode --logLevel="DEBUG"
        volumes:
            - "/var/run/docker.sock:/var/run/docker.sock"
        ports:
            - "8080:8080"
            - "80:80"
        networks:
            - habnet
        configs:
            - source: traefik_config
              target: /etc/traefik/traefik.toml
            - source: traefik_users
              target: /etc/traefik/traefik_users
        deploy:
            mode: global
            placement:
                constraints:
                    - node.role == manager
dobli's avatar
dobli committed
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
    landing:
        image: doblix/pb-framr
        networks:
          - habnet
        configs:
          - source: landing_logo
            target: /usr/share/nginx/html/logo.svg
          - source: landing_pages
            target: /usr/share/nginx/html/pages.json
        deploy:
            labels:
              - traefik.docker.network=habnet
              - traefik.port=80
              - traefik.backend=landing
              - traefik.main.frontend.priority=2
              - traefik.main.frontend.redirect.regex=^(.*)/landing$$
              - traefik.main.frontend.redirect.replacement=$$1/landing/
              - traefik.main.frontend.rule=PathPrefix:/landing;ReplacePathRegex:^/landing/(.*)
                /$$1
            placement:
                constraints:
                    - node.role == manager