在容器中使用 SSH

circle-exclamation

修改您的 Dockerfile

我们将使用不同的 Docker 构建此容器 Dockerfile 在此版本中。

我们需要安装 OpenSSH 服务并启用它,创建一个用户和密码以连接到您的服务器。

在运行于 Alpine, 合并以下内容:

RUN apk --update add --no-cache openssh bash
RUN sed -i s/#PermitRootLogin.*/PermitRootLogin\ yes/ /etc/ssh/sshd_config
RUN echo "tester:$ecureP@ss" | chpasswd

EXPOSE 22

在运行于 Ubuntu,添加以下内容:

RUN apt-get update
RUN apt-get install openssh-server sudo -y

RUN useradd -rm -d /home/ubuntu -s /bin/bash -g root -G sudo -u 1000
RUN echo 'tester:$ecureP@ss' | chpasswd

EXPOSE 22

在您的 entrypoint 中,您需要添加以下命令:

我们建议在本地测试部署,使用 docker run 命令测试服务器启动。

测试完成后,您可以将新版本推送到容器仓库。

在 Edgegap 上

我们建议有一个名为 -dev 或其他对您的服务有意义的名称。这样,您将能够执行一些测试并通过 Edgegap 基础设施轻松登录到您的容器。

  1. 创建应用的新版本,添加 公开 TCP 端口 22

  2. 使用您刚创建的新版本创建部署

  3. 一旦服务运行(就绪),查看您的部署信息。您将看到端口 22 的外部端口映射。

  4. 您可以使用 Putty,使用部署的 FQDN 或 IP 与所使用的端口映射进行连接

  5. 以及您配置的用户名和密码。

最后更新于

这有帮助吗?