使用dockerfile快速构建一个带ssh的docker镜像

不多说先给代码

dockerfile 复制代码
FROM ubuntu:22.04 # 基础镜像 可替换为其他镜像
USER root
RUN echo 'root:root' |chpasswd
RUN apt-get update -y \
    &&  apt-get install -y git wget curl
RUN apt-get install -y openssh-server vim && apt clean \
    && rm -rf /tmp//* /var/lib/apt/lists/* /var/tmp* \
    && echo "PermitRootLogin yes" >> /etc/ssh/sshd_config



RUN mkdir -p /var/run/sshd
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]

启动镜像

  • -p xxxx:22 挂载内部端口 22
bash 复制代码
docker run -d -p 30969:22  docker.io/library/target-image

详解

设置用户

bash 复制代码
USER root
RUN echo 'root:root' |chpasswd 
# 账号:密码

ssh 三步骤

  • 首要条件是安装 openssh-server 和 vim
bash 复制代码
apt-get update -y \
&&  apt-get install -y openssh-server vim
  • 其次添加字段 "PermitRootLogin yes" 到 /etc/ssh/sshd_config文件
bash 复制代码
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
  • 最后新建文件夹
bash 复制代码
mkdir -p /var/run/sshd

如何让vscode也能连接

  • 安装 wget 和 curl
bash 复制代码
apt-get update -y && \
apt-get install -y git wget curl

设置镜像自动启动 ssh

bash 复制代码
CMD ["/usr/sbin/sshd", "-D"]
相关推荐
adminwolf4 小时前
抖音个人号私信自动化回复浏览器扩展,非破解协议,合规的RPA手段
运维·自动化·rpa
爱吃香菜的初学者4 小时前
十二.Linux——管道
linux·运维·服务器
BullSmall6 小时前
规则+大模型混合评测:高效精准双保障
运维·自动化
网硕互联的小客服12 小时前
Linux服务器磁盘应该如何合理分区?
linux·运维·服务器
楚识科技12 小时前
合同比对全流程自动化:OCR识别+差异比对+法律风险字段抽取实战指南
运维·自动化·ocr
代码方舟13 小时前
零信任架构实战:基于天远人企关联构建自动化供应链金融网关
运维·人工智能·架构·自动化
贵沫末14 小时前
Ubuntu——常用软件安装
linux·运维·ubuntu
Doraemomo14 小时前
Linux内核驱动开发——中断与定时器
linux·运维·驱动开发
2301_8084143814 小时前
Linux中动静态库的理解
linux·运维·服务器
誰能久伴不乏14 小时前
保姆级 Docker 入门教程
docker·容器·eureka