実際のところ
Dockerfile
以下のような内容をownnoetic.dockerfileとして保存
# Ubuntu 20.04 LTSをベースイメージとして使用
FROM ubuntu:20.04
# 環境変数を設定
ENV DEBIAN_FRONTEND=noninteractive
# ROS Noeticのインストール
RUN apt-get update && apt-get install -y software-properties-common && \
add-apt-repository universe && \
apt-get update && \
apt-get install -y curl && \
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | apt-key add - && \
sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' && \
apt-get update && \
apt-get install -y ros-noetic-desktop-full
# 環境設定
RUN echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
# ROSパッケージ管理ツールのインストール
RUN apt-get update && \
apt-get install -y python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
# rosdepの初期化
RUN rosdep init
RUN rosdep update
# 作業ディレクトリの設定
WORKDIR /root
# コンテナ起動時にbashを実行
CMD ["bash"]
起動
後々ROS2とつなぐので、ホストマシンと同一のネットワークに存在してもらいます
sudo docker run --network host -it ownnoetic