-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
77 lines (77 loc) · 2.66 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
services:
petric:
build: {context: ., target: sirf}
image: synerbi/sirf:ci
# quick test of installed libraries
deploy: {resources: {reservations: {devices: [{driver: nvidia, count: all, capabilities: [gpu]}]}}}
command:
- python
- -c
- |
import torch, tensorflow as tf
print("torch:", torch.cuda.is_available(), "| tf:", tf.config.list_physical_devices("GPU"))
leaderboard:
networks: [reverse_proxy]
build: {context: ., target: leaderboard}
restart: always
expose: [6006]
command: "tensorboard --logdir=/logs --bind_all --window_title='PETRIC Leaderboard' --path_prefix /tensorboard"
volumes: ["/opt/runner/logs:/logs"]
healthcheck: {test: "wget --spider localhost:6006/tensorboard"}
labels:
virtual.host: petric.tomography.stfc.ac.uk
virtual.tls-email: [email protected]
# /tensorboard -> leaderboard:6006/tensorboard
virtual.port: 6006
virtual.proxy.matcher: /tensorboard*
# /data -> data:80
# /data-raw -> caddy:/share/petric
# /data-wip -> data-wip:80
# /leaderboard -> caddy:/share/petric/leaderboard.md
# / -> wiki
virtual.host.directives: |
handle /data-wip* {
import ext_auth
reverse_proxy http://data-wip
}
handle_path /data-raw* {
root * /share/petric
file_server browse
}
handle /data* {
reverse_proxy http://data
}
redir / https://github.com/SyneRBI/PETRIC/wiki
redir /leaderboard /leaderboard/
redir /data/files/leaderboard* /leaderboard/
redir /provisional* /leaderboard/
handle_path /leaderboard* {
root * /share/petric
handle / {
header Content-Type text/html
templates {
between "<<" ">>"
}
respond <<HTML
<!DOCTYPE html>
<html><head><title>PETRIC Leaderboard</title></head>
<body><<readFile "leaderboard.md" | markdown>></body></html>
HTML 200
}
file_server
}
data:
networks: [reverse_proxy]
image: filebrowser/filebrowser:latest
restart: always
volumes: ["/mnt/share/petric:/srv:ro", "./filebrowser/petric.db:/database.db"]
user: "1005:1005"
command: [--noauth, -d=/database.db, -b=/data, -l=stdout]
data-wip:
networks: [reverse_proxy]
image: filebrowser/filebrowser:latest
restart: always
volumes: ["/mnt/share/petric-wip:/srv", "./filebrowser/petric-wip.db:/database.db"]
user: "1005:1005"
command: [--noauth, -d=/database.db, -b=/data-wip, -l=stdout]
networks: {reverse_proxy: {external: true}}