构建可以ssh连接的容器镜像

构建可以ssh连接的容器镜像

构建可以通过ssh进行连接容器镜像,实现远程登录容器的目的。

ubuntu ssh容器镜像

你可以使用以下Dockerfile来构建一个可以SSH的容器镜像:

FROM ubuntu:20.04MAINTAINER lldhsds# 配置apt国内源
COPY sources.list /etc/apt/# 安装OpenSSH Server
RUN apt-get update && apt-get install -y openssh-server# 创建SSH服务的必要目录
RUN mkdir /var/run/sshd# 设置root用户的密码
RUN echo 'root:ubuntu' | chpasswd# 允许root用户通过SSH登录
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config# 暴露SSH端口
EXPOSE 22# 启动SSH服务
CMD ["/usr/sbin/sshd", "-D"]

在dockerfile同目录下,创建镜像源文件sources.list,内容如下:

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
# deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

使用以下命令构建和运行镜像:

docker build -t ubuntu-ssh .
docker run -d -p 2222:22 ubuntu-ssh

然后,你可以通过SSH连接到容器:

ssh root@localhost -p 2222

centos ssh容器镜像

可以使用以下Dockerfile来构建一个可以SSH的容器镜像:

FROM centos:7MAINTAINER lldhsdsRUN rm -rf /etc/yum.repos.d/*ADD repo.tar.gz /etc/yum.repos.d/RUN yum install openssh-clients openssh-server -y && \ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key && \ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key && \ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key && \sed -i 's/#UseDNS yes/UseDNS no/' /etc/ssh/sshd_config && \echo "root:centos"| chpasswdEXPOSE 22CMD ["/usr/sbin/sshd", "-D"]

根据需要调整密码和配置!

dockerfile同目录下,创建repo.tar.gz,内容如下:

tar zcvf repo.tar.gz centos7.repo

其中cenos7.repo内容如下:

[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7#released updates
[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/56139.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

云原生开发 - 工具镜像(简约版)

在微服务和云原生环境中,容器化的目标之一是尽可能保持镜像小型化以提高启动速度和减少安全风险。然而,在实际操作中,有时候需要临时引入一些工具来进行调试、监控或问题排查。Kubernetes提供了临时容器(ephemeral containers&…

MyBatis-Plus 的核心插件及其使用介绍

MyBatis-Plus 是基于 MyBatis 的增强工具,为简化 MyBatis 的开发提供了诸多功能扩展。它的目标是减少重复代码、提高开发效率,提供了 CRUD(Create, Read, Update, Delete)操作的简化方法以及多种实用插件。以下是 MyBatis-Plus 的…

QT学习笔记4.5(文件、参数文件)

QT学习笔记4.5(文件、参数文件) 1.保存配置参数 1.使用QSettings保存到注册表,ini文件 2.文件存储:使用 QFile 和其他类将参数保存到文本文件、二进制文件、XMLWENJIAN、JSON 文件等。 文本文件:以简单的键值对格式…

Qt实现Halcon窗口显示当前图片坐标

一、前言 Halcon加载图片的窗口,不仅能放大和缩小图片,还可以按住Ctrl键显示鼠标下的灰度值,这种方式很方便我们分析缺陷的灰度和对比度。 二、实现方式 ① 创建显示坐标和灰度的widget窗口 下图的是widget部件,使用了4个label控…

常说的风险评估,那么「基于风险的测试 (RBT)」如何测试?

基于风险的测试 (RBT) 是一种测试方法,它根据风险的概率和影响确定测试活动的优先级。它涉及在潜在问题发生之前识别它们,并将资源分配给风险最高的测试区域。 在 RBT 中,“风险”是指缺陷的可能性及其对系统运行或业…

DS线性表之单链表的讲解和实现(2)

文章目录 前言一、链表的概念二、链表的分类三、链表的结构四、前置知识准备五、单链表的模拟实现定义头节点初始化单链表销毁单链表打印单链表申请节点头插数据尾插数据头删数据尾删数据查询数据在pos位置之后插入数据删除pos位置之后的数据 总结 前言 本篇的单链表完全来说是…

微信小程序 详情图片预览功能实现详解

详情图片预览功能实现详解 在开发微信小程序时,我们经常需要实现点击商品图片进行全屏预览的功能。这不仅提升了用户体验,还允许用户进行保存图片、发送给朋友等操作。本文将详细介绍如何实现这一功能。 思路分析 当用户在商品详情页点击图片时&#…

架设传奇SF时提示此服务器满员,GEE引擎点开始游戏弹出服务器满员的解决方法

昨天一个朋友在架设GEE的传奇服务端时遇到一个奇怪的问题,就是在服务器外网架设时,建好角色点开始游戏提示此服务器满员,这个问题一般比较少见,而且出现的话一般都是GEE引擎的版本。 他折腾了半天,一直没进游戏&#x…

Apache Linkis + OceanBase:如何提升数据分析效率

计算中间件 Apache Linkis 构建了一个计算中间件层,以实现上层应用程序和底层数据引擎之间的连接、治理和编排。目前,已经支持通过数据源的功能,实现用户通过Linkis 对接并使用 OceanBase数据库。 本文详细阐述了在 Apache Linkis v1.3.2中&a…

VGG16模型实现MNIST图像分类

MNIST图像数据集 MNIST(Modified National Institute of Standards and Technology)是一个经典的机器学习数据集,常用于训练和测试图像处理和机器学习算法,特别是在数字识别领域。该数据集包含了大约 7 万张手写数字图片&#xf…

线性代数在大一计算机课程中的重要性

线性代数在大一计算机课程中的重要性 线性代数是一门研究向量空间、矩阵运算和线性变换的数学学科,在计算机科学中有着广泛的应用。大一的计算机课程中,线性代数的学习为学生们掌握许多计算机领域的关键概念打下了坚实的基础。本文将介绍线性代数的基本…

高考技术——pandas使用

百家讲坛,谈论古今,今天我们不聊别的,我们来聊一聊中国的国宝——大熊猫(bushi) 好好,言归正传,我们今天来讲pandas import pandas as pd 申明无需多言,高考主要考察Series和Data…

Milvus向量数据库管理工具[Attu]实践

Attu是一款专为Milvus向量数据库打造的开源数据库管理工具,提供了便捷的图形化界面,极大地简化了对Milvus数据库的操作与管理流程。阿里云Milvus集成了Attu,以便更加高效地管理数据库、集合(Collection)、索引&#xf…

第四次论文问题知识点及问题

1、NP-hard问题 NP-hard,指所有NP问题都能在多项式时间复杂度内归约到的问题。 2、启发式算法 ‌‌启发式算法(heuristic algorithm)是相对于最优化算法提出的。它是一种基于直观或经验构造的算法,旨在以可接受的花费给出待解决…

树莓派3b安装ubuntu18.04服务器系统server配置网线连接

下载ubuntu镜像网址 img镜像,即树莓派官方烧录器使用的镜像网址 ubuntu18.04-server:ARM/RaspberryPi - Ubuntu Wiki 其他版本:Index of /ubuntu/releases 下载后解压即可。 发现使用官方烧录器烧录配置时配置wifi无论如何都不能使用&am…

应对网站IP劫持的有效策略与技术手段

摘要: IP劫持是一种常见的网络攻击方式,攻击者通过非法手段获取目标网站服务器的控制权,进而改变其网络流量的路由路径,导致用户访问错误的站点。本文将介绍如何识别IP劫持,并提供一系列预防和应对措施,以确…

android + tflite 分类APP开发-2

APP开发 build.gradle导入库 //implementation org.tensorflow:tensorflow-android: implementation org.tensorflow:tensorflow-lite:2.4.0 implementation org.tensorflow:tensorflow-lite-support:0.3.1 implementation org.tensorflow:tensorflow-lite-metada…

GO网络编程(三):海量用户通信系统1:登录功能初步

一、准备工作 需求分析 1)用户注册 2)用户登录 3)显示在线用户列表 4)群聊(广播) 5)点对点聊天 6)离线留言 主界面 首先,在项目根目录下初始化mod,然后按照如下结构设计目录: 海量用户通信系统/ ├── go.mod ├── client/ │ ├──…

【阅读笔记】水果轻微损伤的无损检测技术应用

一、水果轻微损伤检测技术以及应用 无损检测技术顾名思义就是指在不破坏水果样品完整性的情况下对样品进行品质鉴定。目前比较常用的农产品水果类无损检测法有:基于红外热成像、机器视觉技术的图像处理方法、光谱检测技术、介电特性技术检测法等。 1.1 基于红外热…

【C++】基于红黑树封装set和map

🚀个人主页:小羊 🚀所属专栏:C 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 前言一、更高维度的泛型二、模版参数三、比较逻辑的重写四、迭代器4.1 const迭代器4.2 重载4.3 - -重载 五、完整代…