forked from cedbossneo/mowgli-docker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yaml
150 lines (145 loc) · 3.94 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
142
143
144
145
146
147
148
149
150
version: '3'
services:
watchtower:
image: containrrr/watchtower
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
WATCHTOWER_CLEANUP: 'true' # cleanup old openmower-gui images
WATCHTOWER_POLL_INTERVAL: 14400 # update check intervall in seconds - eg 14400 = 4h
WATCHTOWER_DEBUG: 'false'
WATCHTOWER_LABEL_ENABLE: 'true'
gui:
container_name: openmower-gui
labels:
"com.centurylinklabs.watchtower.enable": true
project: openmower
app: gui
image: ghcr.io/cedbossneo/openmower-gui:master
restart: unless-stopped
network_mode: host
privileged: true
environment:
ROS_IP: ${ROS_IP}
ROS_MASTER_URI: http://${ROS_IP}:11311
MOWER_CONFIG_FILE: /config/mower_config.sh
DOCKER_HOST: unix:///var/run/docker.sock
depends_on:
- roscore
volumes:
- /dev:/dev
- ./config/om:/config
- /var/run/docker.sock:/var/run/docker.sock
web:
container_name: mowgli-web
labels:
project: openmower
app: web
image: nginx
ports:
- 4005:80
volumes:
- ./web:/usr/share/nginx/html:ro
restart: unless-stopped
mosquitto:
container_name: mowgli-mqtt
labels:
project: openmower
app: mqtt
hostname: mosquitto
image: eclipse-mosquitto:latest
ports:
- 1883:1883
- 9001:9001
volumes:
- ./config/mqtt/mosquitto.conf:/mosquitto/config/mosquitto.conf:ro
restart: unless-stopped
roscore:
container_name: mowgli-roscore
labels:
project: openmower
app: roscore
image: ghcr.io/cedbossneo/mowgli-docker:cedbossneo
network_mode: host
#pull_policy: always
tty: true
privileged: true
command:
- /opt/ros/noetic/bin/roscore
environment:
ROS_IP: ${ROS_IP}
ROSCONSOLE_CONFIG_FILE: /config/rosconsole.config
ROSOUT_DISABLE_FILE_LOGGING: true
tmpfs: /root/.ros/log/
volumes:
- ./config/om:/config
- ./ros:/root/.ros/
- /etc/timezone:/etc/timezone:ro
restart: unless-stopped
rosserial:
container_name: mowgli-rosserial
labels:
project: openmower
app: rosserial
image: ghcr.io/cedbossneo/mowgli-docker:cedbossneo
network_mode: host
#pull_policy: always
tty: true
privileged: true
logging:
driver: "json-file"
options:
max-file: "5"
max-size: 10m
environment:
ROS_MASTER_URI: http://${ROS_IP}:11311
ROS_IP: ${ROS_IP}
ROSCONSOLE_CONFIG_FILE: /config/rosconsole.config
ROSOUT_DISABLE_FILE_LOGGING: true
command:
- /opt/ros/noetic/bin/rosrun
- rosserial_server
- serial_node
- _port:=/dev/mowgli
- _baud:=115200
tmpfs: /root/.ros/log/
volumes:
- ./ros:/root/.ros/
- ./config/om:/config
- /etc/timezone:/etc/timezone:ro
- /dev:/dev
depends_on:
- roscore
restart: unless-stopped
openmower:
container_name: mowgli-openmower
labels:
project: openmower
app: openmower
image: ghcr.io/cedbossneo/mowgli-docker:cedbossneo
network_mode: host
#pull_policy: always
tty: true
privileged: true
logging:
driver: "json-file"
options:
max-file: "5"
max-size: 10m
environment:
ROS_MASTER_URI: http://${ROS_IP}:11311
ROS_IP: ${ROS_IP}
ROSCONSOLE_CONFIG_FILE: /config/rosconsole.config # comment this line out to enable more logs
ROSOUT_DISABLE_FILE_LOGGING: true # comment this line out to enable more logs
tmpfs: /root/.ros/log # comment this line out to enable persistent logs
volumes:
- ./config/om:/config
- ./mower_params:/root/mower_params:ro
- ./params:/opt/open_mower_ros/src/open_mower/params:ro
- ./ros:/root/.ros/
- /etc/timezone:/etc/timezone:ro
- /dev:/dev
depends_on:
- rosserial
restart: unless-stopped