forked from TheThingsNetwork/lorawan-stack
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
90 lines (90 loc) · 2.8 KB
/
docker-compose.yml
File metadata and controls
90 lines (90 loc) · 2.8 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
version: '3.5'
services:
stack:
image: thethingsnetwork/lorawan-stack
entrypoint: ttn-lw-stack
command: start
environment:
- TTN_LW_HTTP_COOKIE_HASH_KEY
- TTN_LW_HTTP_COOKIE_BLOCK_KEY
- TTN_LW_CLUSTER_KEYS
- TTN_LW_FREQUENCY_PLANS_URL
# If using CockroachDB:
- TTN_LW_IS_DATABASE_URI=postgres://root@cockroach:26257/${DEV_DATABASE_NAME:-ttn_lorawan}?sslmode=disable
# If using PostgreSQL:
# - TTN_LW_IS_DATABASE_URI=postgres://root@postgres:5432/${DEV_DATABASE_NAME:-ttn_lorawan}?sslmode=disable
- TTN_LW_REDIS_ADDRESS=redis:6379
# If using (self) signed certificates:
- TTN_LW_TLS_CERTIFICATE=/run/secrets/cert.pem
- TTN_LW_CA=/run/secrets/cert.pem
- TTN_LW_TLS_KEY=/run/secrets/key.pem
# If using Let's Encrypt for "example.com":
# - TTN_LW_TLS_ACME_DIR=/var/lib/acme
# - TTN_LW_TLS_ACME_ENABLE=true
# - TTN_LW_TLS_ACME_HOSTS=example.com
# If it's a public server on "example.com":
# - TTN_LW_IS_EMAIL_NETWORK_IDENTITY_SERVER_URL=https://example.com/oauth
# - TTN_LW_IS_OAUTH_UI_CANONICAL_URL=https://example.com/oauth
# - TTN_LW_HTTP_METRICS_PASSWORD=<set a password>
# - TTN_LW_HTTP_PPROF_PASSWORD=<set a password>
depends_on:
- redis
# If using CockroachDB:
- cockroach
# If using PostgreSQL:
# - postgres
volumes:
- ./blob:/srv/ttn-lorawan/public/blob
# If using Let's Encrypt:
# - ./acme:/var/lib/acme
ports:
- "1882:1882"
- "8882:8882"
- "1883:1883"
- "8883:8883"
- "1884:1884"
- "8884:8884"
- "1885:1885"
- "8885:8885"
# If deploying on a public server:
# - "80:1885"
# - "443:8885"
- "1700:1700/udp"
# If using (self) signed certificates:
secrets:
- cert.pem
- key.pem
# If using CockroachDB:
cockroach:
image: cockroachdb/cockroach:v2.1.6
command: start --http-port 26256 --insecure
volumes:
- ${DEV_DATA_DIR:-.env/data}/cockroach:/cockroach/cockroach-data
ports:
- "127.0.0.1:26257:26257" # Cockroach
- "127.0.0.1:26256:26256" # WebUI
# If using PostgreSQL:
# postgres:
# image: postgres:11.2-alpine
# environment:
# - POSTGRES_PASSWORD=
# - POSTGRES_USER=root
# - POSTGRES_DB=${DEV_DATABASE_NAME:-ttn_lorawan}
# volumes:
# - ${DEV_DATA_DIR:-.env/data}/postgres:/var/lib/postgresql/data
# ports:
# - "127.0.0.1:5432:5432"
redis:
image: redis:5.0.4-alpine
command: redis-server --appendonly yes
volumes:
- ${DEV_DATA_DIR:-.env/data}/redis:/data
ports:
- "127.0.0.1:6379:6379"
# If using (self) signed certificates:
secrets:
cert.pem:
file: ./cert.pem
key.pem:
file: ./key.pem