博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker实现CentOS容器SSH远程登录
阅读量:2216 次
发布时间:2019-05-07

本文共 1026 字,大约阅读时间需要 3 分钟。

这里根据Dockerfile方式构建一个CentOS的可远程SSH的镜像。

Dockerfile文件

/data/test/sshd_centos/目录下新建Dockerfile文件。注意:目录可以自行设定,但目录下除了Dockerfile文件外建议不要放置别的文件和目录。

vim Dockerfile
# 生成的新镜像以centos镜像为基础FROM centos# 指定作者信息MAINTAINER by Test# 安装openssh-serverRUN yum -y install openssh-serverRUN mkdir /var/run/sshdRUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_keyRUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key# 指定root密码RUN /bin/echo 'root:123456'|chpasswdRUN /bin/sed -i 's/.*session.*required.*pam_loginuid.so.*/session optional pam_loginuid.so/g' /etc/pam.d/sshdRUN /bin/echo -e "LANG=\"en_US.UTF-8\"" > /etc/default/localEXPOSE 22CMD /usr/sbin/sshd -D

build镜像

在Dockerfile当前目录执行下面语句,开始构建镜像。注意最后面的点不要忘了,表明是读取当前目录的Dockerfile文件。

docker build -t bigdata/centos-ssh:v1.0.0 .

bigdata/centos-ssh:v1.0.0:新生成的镜像名称及版本号

打包成功的话会出现下面的提示,可能时间会有点长,耐心等待。

Successfully built 2d548392b205

查看镜像

docker images

这里写图片描述

启动容器

docker run -itd -p 10022:22 --name test_centos_1 sshd/centos:v1.0

后台启动一个容器,将该容器名称设置为:test_centos_1,将容器端口22映射到宿主机端口10022。

远程访问

远程通过 宿主机IP、映射端口10022进行访问容器。

你可能感兴趣的文章
深入理解JVM虚拟机4:Java class介绍与解析实践
查看>>
深入理解JVM虚拟机5:虚拟机字节码执行引擎
查看>>
深入理解JVM虚拟机6:深入理解JVM类加载机制
查看>>
深入了解JVM虚拟机8:Java的编译期优化与运行期优化
查看>>
深入理解JVM虚拟机9:JVM监控工具与诊断实践
查看>>
深入理解JVM虚拟机10:JVM常用参数以及调优实践
查看>>
深入理解JVM虚拟机12:JVM性能管理神器VisualVM介绍与实战
查看>>
深入理解JVM虚拟机13:再谈四种引用及GC实践
查看>>
Spring源码剖析1:Spring概述
查看>>
Spring源码剖析2:初探Spring IOC核心流程
查看>>
Spring源码剖析5:JDK和cglib动态代理原理详解
查看>>
Spring源码剖析6:Spring AOP概述
查看>>
Spring源码剖析7:AOP实现原理详解
查看>>
Spring源码剖析8:Spring事务概述
查看>>
Spring源码剖析9:Spring事务源码剖析
查看>>
重新学习Mysql数据库1:无废话MySQL入门
查看>>
探索Redis设计与实现2:Redis内部数据结构详解——dict
查看>>
探索Redis设计与实现3:Redis内部数据结构详解——sds
查看>>
探索Redis设计与实现4:Redis内部数据结构详解——ziplist
查看>>
探索Redis设计与实现6:Redis内部数据结构详解——skiplist
查看>>