-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
99 lines (95 loc) · 3.24 KB
/
Copy pathdocker-compose.yml
File metadata and controls
99 lines (95 loc) · 3.24 KB
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
version: "3.9"
services:
# Web Server / Reverse Proxy
web:
image: lucaslorentz/caddy-docker-proxy:2.7-alpine
restart: always
ports:
- 80:80
- 443:443
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /opt/openises/web:/data
# DB administration tools
dba-adminer:
image: adminer
restart: always
labels:
caddy: dba-adminer.example.org
caddy.reverse_proxy: "{{upstreams http 8080}}"
volumes:
- /etc/localtime:/etc/localtime:ro
dba-pma:
image: phpmyadmin/phpmyadmin
restart: always
labels:
caddy: dba-pma.example.org
caddy.reverse_proxy: "{{upstreams http 80}}"
environment:
PMA_ARBITRARY: 1
volumes:
- /etc/localtime:/etc/localtime:ro
- /sessions
# CAD: Tickets Core
cad-db:
image: mariadb:10.4
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
restart: always
volumes:
- /opt/openises/cad-db/data:/var/lib/mysql
- /opt/openises/cad-db/conf:/etc/mysql
- /etc/localtime:/etc/localtime:ro
environment:
# Passwords come from the .env file sitting next to this compose file.
# There is deliberately NO default: if a variable is unset, `docker
# compose up` stops with the message below instead of quietly starting
# a database that anyone on the network can log into.
# Run `cp .env.example .env` and fill it in. See readme.md.
MYSQL_ROOT_PASSWORD: "${CAD_DB_ROOT_PASSWORD:?missing. Copy .env.example to .env and set a strong value. See readme.md}"
MYSQL_DATABASE: "cad"
MYSQL_USER: "cad"
MYSQL_PASSWORD: "${CAD_DB_PASSWORD:?missing. Copy .env.example to .env and set a strong value. See readme.md}"
cad-web:
image: ghcr.io/openises/tickets-php-docker:main
restart: always
depends_on:
- cad-db
labels:
caddy: cad.example.org
caddy.reverse_proxy: "{{upstreams http 80}}"
volumes:
- /opt/openises/cad-web:/var/www/html:rw
- /etc/localtime:/etc/localtime:ro
# AVL: Traccar
avl-db:
image: mariadb:10.4
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
restart: always
environment:
# Same rule as cad-db above: set these in .env, no defaults on purpose.
# AVL_DB_PASSWORD must also be written into your traccar.xml.
MYSQL_ROOT_PASSWORD: "${AVL_DB_ROOT_PASSWORD:?missing. Copy .env.example to .env and set a strong value. See readme.md}"
MYSQL_DATABASE: "avl"
MYSQL_USER: "avl"
MYSQL_PASSWORD: "${AVL_DB_PASSWORD:?missing. Copy .env.example to .env and set a strong value. See readme.md}"
volumes:
- /opt/openises/avl-db/data:/var/lib/mysql
- /opt/openises/avl-db/conf:/etc/mysql
- /etc/localtime:/etc/localtime:ro
avl-app:
image: traccar/traccar:5.3-alpine
restart: always
depends_on:
- avl-db
ports:
- 5055:5055
- 5055:5055/udp
# - 5000-5150:5000-5150/tcp
# - 5000-5150:5000-5150/udp
labels:
caddy: avl.example.org
caddy.reverse_proxy: "{{upstreams http 8082}}"
volumes:
- /opt/openises/avl/logs:/opt/traccar/logs:rw
- /opt/openises/avl/traccar.xml:/opt/traccar/conf/traccar.xml:ro
- /etc/localtime:/etc/localtime:ro