dockerfile内容例子

发布于:2025-03-28 ⋅ 阅读:(49) ⋅ 点赞:(0)

FROM ros:kinetic

RUN cp /etc/apt/sources.list /etc/apt/sources.list.bak

ADD sources.list* /opt/

RUN cp -f /opt/sources.list.ustc /etc/apt/sources.list

RUN mkdir -p ~/.pip &&
echo “[global]\nindex-url = http://mirrors.aliyun.com/pypi/simple/\n[install]\ntrusted-host = mirrors.aliyun.com\n” > ~/.pip/pip.conf

RUN
apt-get update &&
apt-get install -y build-essential g++ gcc gdb cmake openssh-server &&
apt-get install -y vim rsync git pkg-config libgtk-3-dev sqlite &&
apt-get install -y libavcodec-dev libavformat-dev libswscale-dev &&
apt-get install -y libv4l-dev libxvidcore-dev libx264-dev openexr &&
apt-get install -y libpng-dev libjpeg-dev libtiff-dev gfortran &&
apt-get install -y python3 python3-dev python3-numpy python &&
apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev liblua5.2-dev &&
apt-get install -y unixodbc unixodbc-dev libyaml-cpp-dev libyaml-dev &&
apt-get install -y libopenexr-dev libgstreamer-plugins-base1.0-dev &&
apt-get install -y libgstreamer1.0-dev libboost-all-dev minicom &&
apt-get install -y libzbar-dev curl libexiv2-dev libxmp-dev cutecom &&
apt-get install -y cmake-qt-gui net-tools usbutils zsh wget &&
apt-get install -y libsensors4-dev libsuitesparse-dev libatlas-base-dev &&
apt-get install -y libgoogle-glog-dev google-mock libsdl-image1.2-dev &&
apt-get install -y libedit-dev libpcap-dev libgl1-mesa-dev libfaad-dev &&
apt-get install -y libasound2-dev libusb-1.0-0-dev libbluetooth-dev &&
apt-get install -y ninja-build libeigen3-dev libcairo2-dev &&
apt-get install -y zip unzip locales liblmdb-dev libleveldb-dev &&
apt-get install -y libprotobuf-dev freeglut3-dev &&
apt-get install -y ros-kinetic-rviz ros-kinetic-audio-common-msgs &&
apt-get install -y ros-kinetic-roslint ros-kinetic-eigen-conversions &&
apt-get install -y ros-kinetic-audio-play ros-kinetic-sound-play &&
apt-get install -y ros-kinetic-csm ros-kinetic-diagnostic-updater &&
apt-get install -y ros-kinetic-libg2o ros-kinetic-costmap-converter &&
apt-get install -y ros-kinetic-joy ros-kinetic-urdf ros-kinetic-rqt &&
apt-get install -y ros-kinetic-audio-capture ros-kinetic-tf2-geometry-msgs &&
apt-get install -y ros-kinetic-tf ros-kinetic-angles ros-kinetic-tf2-eigen &&
apt-get install -y ros-kinetic-serial ros-kinetic-tf-conversions &&
apt-get install -y ros-kinetic-rosbridge-suite &&
DEBIAN_FRONTEND=noninteractive apt-get install -y ros-kinetic-pcl-ros &&
apt-get install -y ros-kinetic-tf2-sensor-msgs ros-kinetic-ecl-threads &&
apt-get install -y ros-kinetic-mbf-costmap-core ros-kinetic-mbf-msgs &&
apt-get install -y cppad libtf2-sensor-msgs-dev &&
apt-get install -y libgstrtspserver-1.0-dev liblog4cplus-dev &&
apt-get install -y libmosquitto-dev protobuf-compiler &&
apt-get install -y ros-kinetic-moveit-ros-planning &&
apt-get install -y ros-kinetic-camera-info-manager &&
apt-get install -y ros-kinetic-control-msgs ros-kinetic-ompl &&
apt-get install -y ros-kinetic-controller-manager &&
apt-get install -y ros-kinetic-moveit-ros-planning-interface &&
apt-get install -y ros-kinetic-interactive-markers &&
apt-get install -y ros-kinetic-moveit-visual-tools &&
apt-get install -y ros-kinetic-industrial-msgs &&
apt-get install -y python-pip &&
apt-get remove -y python3-pip &&
apt-get install -y python3-pip &&
apt-get clean &&
rm -rf /var/lib/apt/lists/*

RUN pip install Cython pyserial txaio six

RUN pip3 install Cython pyserial txaio six

ADD opencv-2.4.13.6.tar /opt/

ADD opencv-4.5.0.tar /opt/

ADD protobuf-3.12.3.tar /opt/

ADD ceres-solver-1.13.0.tar /opt/

ADD pcl-1.8.1.tar /opt/

ADD depends.tar /opt/

ADD hikinc.tar /opt/

ADD liblpmsnav-1.0.4-Linux-gcc-5.deb /opt/

RUN
mkdir -p /usr/local/include &&
mkdir -p /usr/local/lib &&
cp -rf /opt/opencv-2.4.13.6/* /usr/local/ &&
cp -rf /opt/protobuf-3.12.3/* /usr/local/ &&
mv /opt/pcl-1.8.1 /opt/pcl-1.8 &&
cp -rf /opt/depends/* /usr/local/lib/ &&
cp -rf /opt/hikinc /usr/local/include/ &&
dpkg -i /opt/liblpmsnav-1.0.4-Linux-gcc-5.deb &&
rm -rf /opt/opencv-2.4.13.6 &&
rm -rf /opt/protobuf-3.12.3 &&
rm -rf /opt/depends &&
rm -rf /opt/hikinc &&
rm -rf /opt/liblpmsnav-1.0.4-Linux-gcc-5.deb

RUN
useradd -m -s /bin/bash -u 1000 robot &&
usermod -a -G sudo robot &&
echo “963852\n963852” | passwd robot &&
gpasswd -a robot dialout &&
mkdir -p /var/lib/locales/supported.d/ &&
echo “en_US.UTF-8 UTF-8\nzh_CN.UTF-8 UTF-8\nzh_CN.GB2312 GB2312\nzh_CN.GBK GBK” > /var/lib/locales/supported.d/local &&
locale-gen

ADD startup.sh /home/robot/

RUN
mkdir /home/robot/install &&
mkdir /home/robot/sync &&
mkdir /home/robot/robotData &&
mkdir /home/robot/history &&
chmod +x /home/robot/startup.sh &&
chown -R robot:robot /home/robot

WORKDIR /home/robot/

USER robot

VOLUME /home/robot/install

VOLUME /home/robot/sync

VOLUME /home/robot/robotData

VOLUME /home/robot/history

ENTRYPOINT [“/home/robot/startup.sh”]

CMD [“/bin/bash”]


网站公告

今日签到

点亮在社区的每一天
去签到