about summary refs log tree commit diff
path: root/docker.yml
blob: 769356d09e75a190800acf7451d856a67e815ef5 (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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
---
- name: Docker apps
  hosts: tamriel
  remote_user: ansible_worker
  tasks:
  - name: Synchronize docker-compose files
    synchronize:
      src: composer/
      dest: composer
  - name: counter app
    docker_service:
      project_src: composer/app
  - name: nginx
    docker_service:
      project_src: composer/nginx
  - name: gitea
    docker_service:
      project_name: gitea
      definition:
        version: '2'
        volumes:
          data:
            external:
              name: gitea_data
          db:
            external:
              name: gitea_db
        networks:
          gitea:
            external: false
        services:
          web:
            image: gitea/gitea
            volumes:
              - data:/data
            ports:
              - "127.0.0.1:5001:3000"
              - "5022:5022"
            environment:
              - DB_TYPE=postgres
              - DB_HOST=db:5432
              - DB_NAME=gitea
              - DB_USER=gitea
              - DB_PASSW=gitea
              - ROOT_URL=https://git.dybiec.info
              - SSH_DOMAIN=git.dybiec.info
              - SSH_PORT=5022
              - APP_NAME=git.dybiec.info
              - DISABLE_REGISTRATION=true
              - INSTALL_LOCK=true
              - RUN_MODE=prod
            networks:
              - gitea
            depends_on:
              - db
            restart: always
          db:
            image: postgres:9.6
            restart: always
            environment:
              - POSTGRES_USER=gitea
              - POSTGRES_PASSWORD=gitea
              - POSTGRES_DB=gitea
            networks:
              - gitea
            volumes:
              - db/:/var/lib/mysql
  - name: grafana
    docker_service:
      project_name: grafana
      definition:
        version: '2'
        volumes:
          grafana-storage:
            external:
              name: grafana_storage
        services:
          grafana:
            image: grafana/grafana
            ports:
            - "127.0.0.1:5002:3000"
            environment:
            - GF_SERVER_ROOT_URL=http://grafana.dybiec.info
            - GF_SECURITY_ADMIN_PASSWORD=very_secret
            volumes:
            - "grafana-storage:/var/lib/grafana"
            restart: always
          prometheus:
            image: prom/prometheus
            expose: [9090]
            extra_hosts:
            - "dockerhost:172.17.0.1"
            volumes:
              - "~/composer/monitoring/prometheus:/etc/prometheus/:ro"
            restart: always
          cadvisor:
            image: google/cadvisor
            expose: [8080]
            volumes:
              - "/:/rootfs:ro"
              - "/var/run:/var/run:ro"
              - "/sys:/sys:ro"
              - "/var/lib/docker:/var/lib/docker:ro"
              - "/dev/disk:/dev/disk:ro"
            restart: always
  - name: registry
    docker_service:
      project_src: composer/registry
  - name: vpn
    docker_service:
      project_name: vpn
      definition:
        version: '2'
        volumes:
          openvpn-certs:
            external:
              name: openvpn-pawel
        services:
          openvpn:
            image: kylemanna/openvpn
            network_mode: host
            volumes:
              - "openvpn-certs:/etc/openvpn"
            privileged: true