node.js - 如何在 Azure 上启用 ssh 连接
问题描述
我无法为我的 azure Web 应用程序(节点 js express 服务器)启用 ssh 连接。我已将此代码添加到我的 Dockerfile 中。
RUN apt-get update \
&& apt-get install -y --no-install-recommends openssh-server \
&& echo "root:Docker!" | chpasswd
EXPOSE 2222 80
在 azure 中输入 ssh 时,我收到以下消息:
SSH CONNECTION CLOSE - Error: connect ECONNREFUSED 172.16.207.2:2222
我还需要做什么才能让它发挥作用?
解决方案
即使按照步骤启用SSH也无法连接到容器的原因是您错过了完成配置的一步。步骤是您还需要在文件中将SSH监听的端口更改为端口2222 sshd_config
。您所做的只是公开端口 2222,但不要让 SSH 监听它。
最简单的方法是复制sshd_config
此处,然后添加如下行:
ENV SSH_PORT 2222
COPY sshd_config /etc/ssh/
推荐阅读
- python - Python Selenium 如何在一个代码中与两种不同的网站格式进行交互
- reactjs - React Native ScrollView 需要很暴力的滚动才能滚动
- mysql - 没有主键的 Oracle 表会发生什么
- node.js - 匹配查找聚合中存在于数组中的嵌套对象字段
- python - 尝试在 Python 中创建盲文表
- swift - swift 如何一次删除多个 PHAsset
- javascript - IIFE 中的“this”关键字上下文
- python - 使用 python 多线程的 Kafka 生产者
- jquery - 可拖动元素 - 如果元素仍在容器 div 内,则防止掉落
- microsoft-teams - 自适应卡片中的可搜索文本块(管理标签中的相同行为添加人员)