-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdocker-compose.yml
70 lines (67 loc) · 2.3 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
# https://answers.ros.org/question/253832/docker-how-to-make-sure-nodes-start-after-master/
# see: https://github.com/toddsampson/ros-docker/blob/master/docker-compose.yml
# https://github.com/LI3DS/ros-li3ds/blob/master/docker-compose.yml
# http://jaredmmoore.com/rosgazebo-genetic-algorithms-and-multiple-instances/
# https://answers.ros.org/question/154511/fast-headless-robot-simulator/
# https://bitbucket.org/osrf/gazebo/issues/1837/vmware-rendering-z-ordering-appears-random
# https://github.com/leonid-shevtsov/headless/issues/47
#
# Note: The `expose` command is used to expose a given port on a specific
# container to the wider internal network (i.e., not the host machine).
# Ports may be forwarded to the host network using the "ports" command.
#
version: '2'
services:
roscore:
image: ros:kinetic
container_name: roscore
hostname: roscore
expose:
- 11311
command: roscore
ig-server:
build:
context: https://github.com/cmu-mars/ig-action-server-p15.git
image: cmu-mars/ig-server
container_name: ig-server
hostname: ig-server
environment:
- "ROS_HOSTNAME=ig-server"
- "ROS_MASTER_URI=http://roscore:11311"
depends_on:
- roscore
command: python -u src/ig_action_server/src/ig_server.py
gazebo:
build:
context: https://github.com/cmu-mars/cp-gazebo-p15.git
image: cmu-mars/gazebo
container_name: gazebo
hostname: gazebo
# expose the Gazebo server to the host machine
ports:
- 11345:11345
environment:
- "ROS_HOSTNAME=gazebo"
- "ROS_MASTER_URI=http://roscore:11311"
- "GAZEBO_MASTER_URI=http://localhost:11345"
depends_on:
- roscore
command: roslaunch --wait /home/mars/catkin_ws/src/cp-gazebo/launch/cp1.launch
# TODO: rainbow should run inside its own container
brasscomms:
build:
context: https://github.com/cmu-mars/brasscomms.git
image: cmu-mars/brasscomms
container_name: brasscomms
hostname: brasscomms
environment:
- "ROS_HOSTNAME=brasscomms"
- "ROS_MASTER_URI=http://roscore:11311"
ports:
- 5000:5000
depends_on:
- roscore
- ig-server
- gazebo
# -u flag is used to disable output buffering -- useful for debugging!
command: python -u src/brasscomms/src/brasscomms.py | tee brasscomms.out