This commit is contained in:
Björn Ellensohn 2023-08-02 16:36:47 +02:00
parent 06ab3d6547
commit 7c22e027e0
3 changed files with 51 additions and 34 deletions

View File

@ -3,10 +3,12 @@ version: "3.9"
services: services:
# Base image containing dependencies. # Base image containing dependencies.
base: base:
image: ghcr.io/bjoernellens1/ros2_rmp/rmp:base image: ghcr.io/bjoernellens1/ros2-base:humble
build: build:
context: . context: .
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
tags:
- ghcr.io/bjoernellens1/ros2-base:humble
args: args:
ROS_DISTRO: humble ROS_DISTRO: humble
target: base target: base
@ -14,7 +16,6 @@ services:
platforms: platforms:
- linux/arm64 - linux/arm64
- linux/amd64 - linux/amd64
# Interactive shell # Interactive shell
stdin_open: true stdin_open: true
tty: true tty: true
@ -36,12 +37,12 @@ services:
# Overlay image containing the project specific source code. # Overlay image containing the project specific source code.
overlay: overlay:
extends: base extends: base
image: ghcr.io/bjoernellens1/ros2_rmp/rmp:overlay image: ghcr.io/bjoernellens1/cps_bot_mini_ws/bot:overlay
build: build:
context: . context: .
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
tags: tags:
- ghcr.io/bjoernellens1/ros2_rmp/rmp:overlay - ghcr.io/bjoernellens1/cps_bot_mini_ws/bot:overlay
target: overlay target: overlay
x-bake: x-bake:
platforms: platforms:
@ -53,18 +54,17 @@ services:
# Additional dependencies for GUI applications # Additional dependencies for GUI applications
guis: guis:
extends: overlay extends: overlay
image: ghcr.io/bjoernellens1/ros2_rmp/rmp:guis image: ghcr.io/bjoernellens1/cps_bot_mini_ws/bot:guis
build: build:
context: . context: .
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
tags: tags:
- ghcr.io/bjoernellens1/ros2_rmp/rmp:guis - ghcr.io/bjoernellens1/cps_bot_mini_ws/bot:guis
target: guis target: guis
x-bake: x-bake:
platforms: platforms:
- linux/arm64 - linux/arm64
- linux/amd64 - linux/amd64
#entrypoint: /bin/bash
command: > command: >
/bin/bash /bin/bash
@ -72,7 +72,7 @@ services:
robot_state_publisher: robot_state_publisher:
extends: overlay extends: overlay
command: > command: >
ros2 launch cps_rmp220_support rsp.launch.py --ros-args -r __ns:=/probeNamespace ros2 launch bot_mini_bringup rsp.launch.py
stdin_open: true stdin_open: true
tty: true tty: true
# Networking and IPC for ROS 2 # Networking and IPC for ROS 2
@ -83,11 +83,10 @@ services:
controller: controller:
extends: overlay extends: overlay
command: > command: >
ros2 launch cps_rmp220_support robot_controller.launch.py __ns:=/probeNamespace ros2 launch bot_mini_bringup robot_controller.launch.py
devices: devices:
- /dev/ttyUSB0:/dev/ttyUSB0 - /dev/ttyUSB0:/dev/ttyUSB0
- /dev/ttyACM0:/dev/ttyACM0 - /dev/ttyACM0:/dev/ttyACM0
- /dev/input/js0:/dev/input/js0
# Interactive shell # Interactive shell
stdin_open: true stdin_open: true
tty: true tty: true
@ -96,17 +95,13 @@ services:
ipc: host ipc: host
# Needed to display graphical applications # Needed to display graphical applications
privileged: true privileged: true
# depends_on:
# - robot_state_publisher
# teleop # teleop
teleop: teleop:
extends: overlay extends: overlay
command: > command: >
ros2 launch cps_rmp220_support robot_joystick.launch.py ros2 launch bot_mini_bringup robot_joy_teleop.launch.py
devices: devices:
- /dev/ttyUSB0:/dev/ttyUSB0
- /dev/ttyACM0:/dev/ttyACM0
- /dev/input/js0:/dev/input/js0 - /dev/input/js0:/dev/input/js0
# Interactive shell # Interactive shell
stdin_open: true stdin_open: true
@ -121,20 +116,22 @@ services:
lidar: lidar:
extends: overlay extends: overlay
command: > command: >
ros2 launch cps_rmp220_support robot_lidar.launch.py ros2 launch cbot_mini_bringup robot_lidar.launch.py
devices:
- /dev/ttyUSB0:/dev/ttyUSB0
- /dev/ttyUSB1:/dev/ttyUSB1
- /dev/ttyACM0:/dev/ttyACM0
stdin_open: true stdin_open: true
tty: true tty: true
# Networking and IPC for ROS 2 # Networking and IPC for ROS 2
network_mode: host network_mode: host
ipc: host ipc: host
depends_on:
- robot_state_publisher
# mapping # mapping
mapping: mapping:
extends: overlay extends: overlay
command: > command: >
ros2 launch cps_rmp220_support robot_mapping.launch.py ros2 launch bot_mini_bringup robot_mapper.launch.py
# Interactive shell # Interactive shell
stdin_open: true stdin_open: true
tty: true tty: true
@ -146,7 +143,7 @@ services:
navigation: navigation:
extends: overlay extends: overlay
command: > command: >
ros2 launch cps_rmp220_support robot_navigation.launch.py ros2 launch cbot_mini_bringup robot_navigation.launch.py
map_subscribe_transient_local:=true map_subscribe_transient_local:=true
stdin_open: true stdin_open: true
tty: true tty: true
@ -154,22 +151,9 @@ services:
network_mode: host network_mode: host
ipc: host ipc: host
# bash
bash:
extends: overlay
command: >
/bin/bash
stdin_open: true
tty: true
# Networking and IPC for ROS 2
network_mode: host
ipc: host
# rviz2 # rviz2
rviz2: rviz2:
extends: guis extends: guis
# command: >
# ros2 launch cps_rmp220_support robot_rviz2.launch.py
command: > command: >
rviz2 rviz2
# Interactive shell # Interactive shell

View File

@ -86,4 +86,4 @@ RUN source /${UNDERLAY_WS}/install/setup.bash \
# Set up the entrypoint # Set up the entrypoint
ENTRYPOINT [ "/entrypoint.sh" ] ENTRYPOINT [ "/entrypoint.sh" ]
LABEL org.opencontainers.image.source=https://github.com/bjoernellens1/ros2_rmp LABEL org.opencontainers.image.source=https://github.com/bjoernellens1/cps_bot_mini_ws

33
overlay.repos Normal file
View File

@ -0,0 +1,33 @@
repositories:
cps_rmp220_support:
type: git
url: https://github.com/bjoernellens1/cps_rmp220_support.git
version: main
rmp220_teleop:
type: git
url: https://github.com/bjoernellens1/rmp220_teleop.git
version: main
cam_openCV:
type: git
url: https://github.com/bjoernellens1/ros2_cam_openCV.git
version: main
bot_mini_teleop:
type: git
url: https://github.com/bjoernellens1/rmp220_teleop
version: bot_mini
bot_mini_description:
type: git
url: https://github.com/bjoernellens1/bot_mini_description
cam_openCV:
type: git
url: https://github.com/bjoernellens1/ros2_cam_openCV
bot_mini_bringup:
type: git
url: https://github.com/bjoernellens1/bot_mini_bringup