Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Ubuntu 22 LTS上に "ROS 1 noetic on Ubuntu 20 LTS "の環境をつくる

実際のところ

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"]

ビルド

dockerのインスタンスを実行した状態で

sudo docker build -f ownnoetic.dockerfile -t ownnoetic .

起動

後々ROS2とつなぐので、ホストマシンと同一のネットワークに存在してもらいます

sudo docker run --network host -it ownnoetic