如何访问 Heroku 中的 docker 容器?

2023-12-29

我已按照此处构建图像的说明进行操作:https://devcenter.heroku.com/articles/container-registry-and-runtime#getting-started https://devcenter.heroku.com/articles/container-registry-and-runtime#getting-started

我已成功将图像发布到我的 heroku 应用程序,但我不知道下一步该做什么,以访问我的 zsh 命令行并开发一些东西。我正在尝试在 Heroku 上的 docker 容器中使用 ROS(机器人操作系统)。

这是我的 Dockerfile:

FROM osrf/ros:kinetic-desktop-full
RUN apt-get update && apt-get install -y \
            locales \
        tmux \
        zsh \
        curl \
        wget \
        vim \
        emacs24 \
        sudo \
        libgl1-mesa-glx \
        libgl1-mesa-dri \
        mesa-utils \
        unzip \
        && rm -rf /var/likb/apt/lists/*
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
CMD ["zsh"]

正如你所看到的,我只是使用 zsh 命令行来安装 ROS 和基本包。这是我按照他们的指示上传到 Heroku 的内容。

现在,在我的本地 PC 上,我只需运行此脚本即可使我的容器处于活动状态并访问 zsh 命令行并进一步开发我的 ROS(就像我使用常用​​的 bash 行一样):

#! /bin/bash

xhost +local:
docker run -it --net=host \
--user=$(id -u) \
-e DISPLAY=$DISPLAY \
-e QT_GRAPHICSSYSTEM=native \
-e CONTAINER_NAME=ros-kinetic-dev \
-e USER=$USER \
--workdir=/home/$USER \
-v "/tmp/.X11-unix:/tmp/.X11-unix" \
-v "/etc/group:/etc/group:ro" \
-v "/etc/passwd:/etc/passwd:ro" \
-v "/etc/shadow:/etc/shadow:ro" \
-v "/etc/sudoers.d:/etc/sudoers.d:ro" \
-v "/home/$USER/:/home/$USER/" \
--device=/dev/dri:/dev/dri \
--name=ros-kinetic-dev \
kinetic:dev

简而言之,我还使 GUI 能够看到一些可视化,例如 RViz,因为 ROS 严重依赖于 Qt。

那么,您能帮助我了解如何访问 heroku 上的相同 zsh 命令行(使用我推送的映像)吗?


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何访问 Heroku 中的 docker 容器? 的相关文章

随机推荐