-
Notifications
You must be signed in to change notification settings - Fork 24
/
docker-compose.yml
88 lines (75 loc) · 2.71 KB
/
docker-compose.yml
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
# This file is part of dirtsand.
#
# dirtsand is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# dirtsand is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with dirtsand. If not, see <http://www.gnu.org/licenses/>.
version: "3.4"
services:
# If you would prefer to run a bare metal database, you may omit this and simply set the
# environment variables POSTGRES_HOST and POSTGRES_PORT on the moul service. You'll
# probably just want to run a single container and avoid all the dockersand stuff in that
# case.
db:
image: postgres:13-alpine
restart: on-failure
volumes:
- db:/var/lib/postgresql/data/
environment:
- POSTGRES_USER=dirtsand
- POSTGRES_PASSWORD=MySuperSecretPassword
- POSTGRES_DB=dirtsand
# Note: the dockersand helper scripts assume the dirtsand container is named this.
moul:
build:
context: .
target: production
args:
- BUILD_TYPE=release
depends_on: [db]
restart: on-failure
# All dirtsand services need this incantation so that the console doesn't hang the container.
stdin_open: true
tty: true
# Additional options:
# DS_HOST: ***external*** address to advertise to clients
# DS_DROIDKEY: encryption key for python.pak
# SHARD_NAME: Your shard's name (used for storing user credentials)
# SHARD_PORT: Port you exposed for dirtsand
# SHARD_SIGNUP_URL: URL opened when the "Need an Account?" button is pressed
# SHARD_STATUS_URL: URL fetched for the launcher status message
# SHARD_WELCOME_MSG: Message displayed by the built-in status server
environment:
- POSTGRES_USER=dirtsand
- POSTGRES_PASSWORD=MySuperSecretPassword
- POSTGRES_DB=dirtsand
ports:
- "14617:14617/tcp"
- "8080:8080/tcp"
volumes:
- type: bind
source: ./build/etc
target: /opt/dirtsand/etc/
- type: bind
source: ./build/authserv
target: /opt/dirtsand/lib/authsrv/
- type: bind
source: ./build/fileserv
target: /opt/dirtsand/lib/filesrv/
- type: bind
source: ./build/dat
target: /opt/dirtsand/lib/dat/
- type: bind
source: ./build/SDL
target: /opt/dirtsand/lib/SDL/
# Ensures the database persists.
volumes:
db: