如何让僵尸收割过程发挥作用

如何让僵尸收割过程发挥作用

我的系统是 Windows 10 Home,我在 Docker Desktop 的 4.23.0 版本中运行我的 Docker 容器。当我运行我的容器时,我得到了这个

File "/home/catkin_ws/src/CMakeLists.txt" already exists[WARN  tini (73)] Tini is not running as PID 1 and isn't registered as a child subreaper.
Zombie processes will not be re-parented to Tini, so zombie reaping won't work.
To fix the problem, use the -s option or set the environment variable TINI_SUBREAPER to register Tini as a child subreaper, or run Tini as PID 1.

8081容器日志中的警告。此容器应该分别通过端口和在本地主机上运行 VNC 和 GZweb 环境8080。虽然我能够正确查看 VNC 环境,但在 GZweb 环境中,地图无法正确加载,因此我相信僵尸进程可能会干扰地图的加载过程。从屏幕截图中可以看到,除了地图之外,机器人模型也没有接收到 VNC 环境。

VNC 环境

我假设这个问题与 Linux 直接相关(在 Docker 社区 Discord 频道和论坛上从未找到任何解决方案)。我做了几次研究,但没有发现任何东西。也许这个社区可以帮助我。我还附上了我的 Docker 文件和入口点脚本。

DOCKER 文件

FROM --platform=linux/amd64 crudfab/gazebo_docker:v1

# clone gzweb
RUN cd /home \
    && git clone https://gzweb:[email protected]/kangal-otonomi-yarimasi/gzweb.git

# clone source
RUN mkdir -p /home/catkin_ws/src \
    && cd /home/catkin_ws/src \
    && git clone https://kangal:[email protected]/kangal-otonomi-yarimasi/kangal.git .

COPY ./src /home/catkin_ws/src/examples

RUN cp -r /src/web/dist/* /var/www/html/ \
    && cd /var/www/html/ && chmod -R 777 *


RUN cp -r /src/rootfs/* / \
    && ln -sf /var/www/html/static/websockify var/www/html/static/novnc/utils/websockify && \
    chmod +x /var/www/html/static/websockify/run

WORKDIR /root
ENV HOME=/home/ubuntu \
    SHELL=/bin/bash

COPY ./docker-entrypoint.sh /root/
ENTRYPOINT ["/bin/bash", "/root/docker-entrypoint.sh"]

# setup environment
EXPOSE 8080
EXPOSE 7681
EXPOSE 11311
EXPOSE 9090
EXPOSE 8001
EXPOSE 80

docker-entrypoint.sh 文件

ln -s /usr/bin/python3 /usr/bin/python

source /opt/ros/noetic/setup.bash
source /usr/share/gazebo/setup.sh

mkdir -p /home/catkin_ws/src
cd /home/catkin_ws/src/
catkin_init_workspace
cd /home/catkin_ws/
catkin_make
sh /src/rootfs/startup.sh

相关内容