forked from Linaro/lite-lava-docker-compose
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yaml
141 lines (133 loc) · 4.73 KB
/
docker-compose.yaml
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
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
version: "3.4"
services:
db:
image: ${DC_POSTGRES_IMAGE}
container_name: lava-server-db
environment:
POSTGRES_USER: lavaserver
POSTGRES_PASSWORD: lavaserverdbpass
volumes:
- db-data:/var/lib/postgresql/data
restart: unless-stopped
lava-logs:
container_name: lava-logs
image: ${DC_SERVER_IMAGE}
volumes:
- joboutput:/var/lib/lava-server/default/media/job-output
- ./overlays/lava-server/etc/lava-server/instance.conf:/etc/lava-server/instance.conf:ro
- ./overlays/lava-server/etc/lava-server/settings.conf:/etc/lava-server/settings.conf:ro
- ./overlays/lava-server/etc/lava-server/lava-logs:/etc/lava-server/lava-logs:ro
depends_on:
- db
environment:
SERVICES: "lava-logs"
ports:
- 5555:5555
restart: unless-stopped
stop_grace_period: 20s
lava-master:
container_name: lava-master
image: ${DC_SERVER_IMAGE}
volumes:
- devices:/etc/lava-server/dispatcher-config/devices:ro
- health-checks:/etc/lava-server/dispatcher-config/health-checks:ro
- ./overlays/lava-server/etc/lava-server/instance.conf:/etc/lava-server/instance.conf:ro
- ./overlays/lava-server/etc/lava-server/settings.conf:/etc/lava-server/settings.conf:ro
- ./overlays/lava-server/etc/lava-server/lava-master:/etc/lava-server/lava-master:ro
- ./overlays/lava-server/etc/lava-server/dispatcher-config/device-types/frdm-k64f.jinja2:/etc/lava-server/dispatcher-config/device-types/frdm-k64f.jinja2:ro
depends_on:
- db
environment:
SERVICES: "lava-master"
ports:
- 5556:5556
restart: unless-stopped
lava-publisher:
container_name: lava-publisher
image: ${DC_SERVER_IMAGE}
volumes:
- ./overlays/lava-server/etc/lava-server/instance.conf:/etc/lava-server/instance.conf:ro
- ./overlays/lava-publisher/etc/lava-server/settings.conf:/etc/lava-server/settings.conf:ro
environment:
SERVICES: "lava-publisher"
ports:
- 5500:5500
restart: unless-stopped
lava-server:
container_name: lava-server
image: ${DC_SERVER_IMAGE}
volumes:
- devices:/etc/lava-server/dispatcher-config/devices
- health-checks:/etc/lava-server/dispatcher-config/health-checks
- joboutput:/var/lib/lava-server/default/media/job-output
- ./overlays/lava-server/etc/lava-server/instance.conf:/etc/lava-server/instance.conf:ro
- ./overlays/lava-server/etc/lava-server/settings.conf:/etc/lava-server/settings.conf:ro
- ./overlays/lava-server/etc/lava-server/dispatcher-config/device-types/frdm-k64f.jinja2:/etc/lava-server/dispatcher-config/device-types/frdm-k64f.jinja2:ro
depends_on:
- db
environment:
SERVICES: "gunicorn"
BIND: "--bind lava-server:8000"
restart: unless-stopped
apache2:
container_name: apache2
image: ${DC_SERVER_IMAGE}
volumes:
- ./overlays/lava-server/etc/apache2/sites-available/lava-server.conf:/etc/apache2/sites-available/lava-server.conf:ro
depends_on:
- lava-server
environment:
SERVICES: "apache2"
ports:
- 80:80
restart: unless-stopped
lava-dispatcher:
container_name: lava-dispatcher
#image: ${DC_DISPATCHER_IMAGE}
build:
context: ./lite-lava-dispatcher
args:
DC_DISPATCHER_IMAGE: ${DC_DISPATCHER_IMAGE}
devices:
# - /dev/kvm # needed for QEMU
- /dev/net/tun # needed for QEMU
security_opt:
- apparmor:unconfined # needed for usb mass storage
cap_add:
- NET_ADMIN # needed for QEMU
- SYS_ADMIN # needed for usb mass storage
environment:
DISPATCHER_HOSTNAME: "--hostname=lava-dispatcher"
LOGGER_URL: "tcp://lava-logs:5555"
MASTER_URL: "tcp://lava-master:5556"
volumes:
- /run/udev/control:/run/udev/control:ro # libudev expects it for udev events
- /boot:/boot:ro
- /lib/modules:/lib/modules:ro
- ./overlays/lava-dispatcher/usr/lib/python3/dist-packages/lava_dispatcher/actions/boot/pyocd.py:/usr/lib/python3/dist-packages/lava_dispatcher/actions/boot/pyocd.py:ro
# Example for development
# If you wanted to point to a local git checkout of lava for development
# of lava_dispatcher, you can uncomment out the lines below and
# set the 'source:' to point to where your lava checkout is
# The example assumes its relative in ../lava
#
# - type: bind
# source: ../lava/lava_dispatcher
# target: /usr/lib/python3/dist-packages/lava_dispatcher
ser2net:
container_name: lava-ser2net
build:
context: ./ser2net
volumes:
- type: bind
source: ./ser2net/ser2net.conf
target: /etc/ser2net.conf
volumes:
db-data:
name: lava-server-pgdata
devices:
name: lava-server-devices
health-checks:
name: lava-server-health-checks
joboutput:
name: lava-server-joboutput