Skip to content

Commit 245d21b

Browse files
Merge pull request #395 from mikaelarguedas/noetic-foxy
Foxy images
2 parents b6e46db + 730834d commit 245d21b

File tree

13 files changed

+293
-2
lines changed

13 files changed

+293
-2
lines changed

ros/foxy/ubuntu/focal/Makefile

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
all: help
2+
3+
help:
4+
@echo ""
5+
@echo "-- Help Menu"
6+
@echo ""
7+
@echo " 1. make build - build all images"
8+
@echo " 2. make pull - pull all images"
9+
@echo " 3. make clean - remove all images"
10+
@echo ""
11+
12+
build:
13+
@docker build --tag=ros:foxy-ros-core-focal ros-core/.
14+
@docker build --tag=ros:foxy-ros-base-focal ros-base/.
15+
# @docker build --tag=osrf/ros:foxy-desktop-focal desktop/.
16+
# @docker build --tag=osrf/ros:foxy-ros1-bridge-focal ros1-bridge/.
17+
18+
pull:
19+
@docker pull ros:foxy-ros-core-focal
20+
@docker pull ros:foxy-ros-base-focal
21+
# @docker pull osrf/ros:foxy-desktop-focal
22+
# @docker pull osrf/ros:foxy-ros1-bridge-focal
23+
24+
clean:
25+
@docker rmi -f ros:foxy-ros-core-focal
26+
@docker rmi -f ros:foxy-ros-base-focal
27+
# @docker rmi -f osrf/ros:foxy-desktop-focal
28+
# @docker rmi -f osrf/ros:foxy-ros1-bridge-focal
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# This is an auto generated Dockerfile for ros:desktop
2+
# generated from docker_images_ros2/create_ros_image.Dockerfile.em
3+
FROM ros:foxy-ros-base-focal
4+
5+
# install ros2 packages
6+
RUN apt-get update && apt-get install -y --no-install-recommends \
7+
ros-foxy-desktop=0.9.1-1* \
8+
&& rm -rf /var/lib/apt/lists/*
9+
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#!/bin/bash
2+
# http://windsock.io/automated-docker-image-builds-with-multiple-tags/
3+
4+
set -e
5+
6+
# Parse image name for repo name
7+
tagStart=$(expr index "$IMAGE_NAME" :)
8+
repoName=${IMAGE_NAME:0:tagStart-1}
9+
10+
# Tag and push image for each additional tag
11+
for tag in foxy-desktop; do
12+
docker tag $IMAGE_NAME ${repoName}:${tag}
13+
docker push ${repoName}:${tag}
14+
done

ros/foxy/ubuntu/focal/images.yaml.em

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
%YAML 1.1
2+
# ROS2 Dockerfile database
3+
---
4+
images:
5+
ros-core:
6+
base_image: @(os_name):@(os_code_name)
7+
maintainer_name: @(maintainer_name)
8+
template_name: docker_images_ros2/create_ros_core_image.Dockerfile.em
9+
entrypoint_name: docker_images_ros2/ros_entrypoint.sh
10+
template_packages:
11+
- docker_templates
12+
ros2_packages:
13+
- ros-core
14+
ros-base:
15+
base_image: @(user_name):@(ros2distro_name)-ros-core-@(os_code_name)
16+
maintainer_name: @(maintainer_name)
17+
template_name: docker_images_ros2/create_ros_image.Dockerfile.em
18+
template_packages:
19+
- docker_templates
20+
ros2_packages:
21+
- ros-base
22+
bootstrap_ros_tools:
23+
desktop:
24+
base_image: @(user_name):@(ros2distro_name)-ros-base-@(os_code_name)
25+
maintainer_name: @(maintainer_name)
26+
template_name: docker_images_ros2/create_ros_image.Dockerfile.em
27+
template_packages:
28+
- docker_templates
29+
ros2_packages:
30+
- desktop
31+
ros1-bridge:
32+
base_image: @(user_name):@(ros2distro_name)-ros-base-@(os_code_name)
33+
maintainer_name: @(maintainer_name)
34+
template_name: docker_images_ros2/ros1_bridge/create_ros_ros1_bridge_image.Dockerfile.em
35+
entrypoint_name: docker_images_ros2/ros1_bridge/ros_entrypoint.sh
36+
template_packages:
37+
- docker_templates
38+
ros2_packages:
39+
- ros1-bridge
40+
- demo-nodes-cpp
41+
- demo-nodes-py
42+
ros_packages:
43+
- ros-comm
44+
- roscpp-tutorials
45+
- rospy-tutorials

ros/foxy/ubuntu/focal/platform.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
%YAML 1.1
2+
# ROS2 Dockerfile database
3+
---
4+
platform:
5+
os_name: ubuntu
6+
os_code_name: focal
7+
rosdistro_name: noetic
8+
ros2distro_name: foxy
9+
user_name: ros
10+
maintainer_name:
11+
arch: amd64
12+
type: distribution
13+
version:
14+
ros_version: 2
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# This is an auto generated Dockerfile for ros:ros-base
2+
# generated from docker_images_ros2/create_ros_image.Dockerfile.em
3+
FROM ros:foxy-ros-core-focal
4+
5+
# install bootstrap tools
6+
RUN apt-get update && apt-get install --no-install-recommends -y \
7+
build-essential \
8+
git \
9+
python3-colcon-common-extensions \
10+
python3-colcon-mixin \
11+
python3-rosdep \
12+
python3-vcstool \
13+
&& rm -rf /var/lib/apt/lists/*
14+
15+
# bootstrap rosdep
16+
RUN rosdep init && \
17+
rosdep update --rosdistro $ROS_DISTRO
18+
19+
# setup colcon mixin and metadata
20+
RUN colcon mixin add default \
21+
https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml && \
22+
colcon mixin update && \
23+
colcon metadata add default \
24+
https://raw.githubusercontent.com/colcon/colcon-metadata-repository/master/index.yaml && \
25+
colcon metadata update
26+
27+
# install ros2 packages
28+
RUN apt-get update && apt-get install -y --no-install-recommends \
29+
ros-foxy-ros-base=0.9.1-1* \
30+
&& rm -rf /var/lib/apt/lists/*
31+
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# This is an auto generated Dockerfile for ros:ros-core
2+
# generated from docker_images_ros2/create_ros_core_image.Dockerfile.em
3+
FROM ubuntu:focal
4+
5+
# setup timezone
6+
RUN echo 'Etc/UTC' > /etc/timezone && \
7+
ln -s /usr/share/zoneinfo/Etc/UTC /etc/localtime && \
8+
apt-get update && \
9+
apt-get install -q -y --no-install-recommends tzdata && \
10+
rm -rf /var/lib/apt/lists/*
11+
12+
# install packages
13+
RUN apt-get update && apt-get install -q -y --no-install-recommends \
14+
dirmngr \
15+
gnupg2 \
16+
&& rm -rf /var/lib/apt/lists/*
17+
18+
# setup keys
19+
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
20+
21+
# setup sources.list
22+
RUN echo "deb http://packages.ros.org/ros2/ubuntu focal main" > /etc/apt/sources.list.d/ros2-latest.list
23+
24+
# setup environment
25+
ENV LANG C.UTF-8
26+
ENV LC_ALL C.UTF-8
27+
28+
ENV ROS_DISTRO foxy
29+
30+
# install ros2 packages
31+
RUN apt-get update && apt-get install -y --no-install-recommends \
32+
ros-foxy-ros-core=0.9.1-1* \
33+
&& rm -rf /var/lib/apt/lists/*
34+
35+
# setup entrypoint
36+
COPY ./ros_entrypoint.sh /
37+
38+
ENTRYPOINT ["/ros_entrypoint.sh"]
39+
CMD ["bash"]
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/bin/bash
2+
set -e
3+
4+
# setup ros2 environment
5+
source "/opt/ros/$ROS_DISTRO/setup.bash"
6+
exec "$@"
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# This is an auto generated Dockerfile for ros:ros1-bridge
2+
# generated from docker_images_ros2/ros1_bridge/create_ros_ros1_bridge_image.Dockerfile.em
3+
FROM ros:foxy-ros-base-focal
4+
5+
# setup keys
6+
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
7+
8+
# setup sources.list
9+
RUN echo "deb http://packages.ros.org/ros/ubuntu focal main" > /etc/apt/sources.list.d/ros1-latest.list
10+
11+
ENV ROS1_DISTRO noetic
12+
ENV ROS2_DISTRO foxy
13+
# install ros packages
14+
RUN apt-get update && apt-get install -y --no-install-recommends \
15+
ros-noetic-ros-comm=1.15.7-1* \
16+
ros-noetic-roscpp-tutorials=0.10.1-1* \
17+
ros-noetic-rospy-tutorials=0.10.1-1* \
18+
&& rm -rf /var/lib/apt/lists/*
19+
20+
# install ros2 packages
21+
RUN apt-get update && apt-get install -y --no-install-recommends \
22+
ros-foxy-ros1-bridge=0.9.2-1* \
23+
ros-foxy-demo-nodes-cpp=0.9.3-1* \
24+
ros-foxy-demo-nodes-py=0.9.3-1* \
25+
&& rm -rf /var/lib/apt/lists/*
26+
27+
# setup entrypoint
28+
COPY ./ros_entrypoint.sh /
29+
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#!/bin/bash
2+
# http://windsock.io/automated-docker-image-builds-with-multiple-tags/
3+
4+
set -e
5+
6+
# Parse image name for repo name
7+
tagStart=$(expr index "$IMAGE_NAME" :)
8+
repoName=${IMAGE_NAME:0:tagStart-1}
9+
10+
# Tag and push image for each additional tag
11+
for tag in foxy-ros1-bridge; do
12+
docker tag $IMAGE_NAME ${repoName}:${tag}
13+
docker push ${repoName}:${tag}
14+
done

0 commit comments

Comments
 (0)