写Dockerfile配置文件

#Dockerfile
FROM centos:6  #以下命令用在什么镜像中
MAINTAINER cuizhipeng <cuizhipeng@126.com>#维护人员的姓名、联系方式
RUN yum install -y openssh-server sudo
RUN sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config
RUN ssh-keygen -q -N "" -t dsa -f /etc/ssh/ssh_host_dsa_key
RUN ssh-keygen -q -N "" -t rsa -f /etc/ssh/ssh_host_rsa_key
EXPOSE 22    #设置一个端口在运行的镜像中暴露在外
RUN echo 'root:123456' | chpasswd
RUN yum install tar gzip gcc vim wget -y
ENV LANG en_US.UTF-8   #设置环境变量
ENV LC_ALL en_US.UTF-8
RUN mkdir /var/run/sshd
CMD /usr/sbin/sshd -D
#End
    然后在文件所在目录下执行 docker build -rm -t liuxin/centos:ssh . (这里有个点,别忽略了),等一会就可以看到过程了,这里就不复制了。
    这里的两条ssh-keygen要加上,如果不加ssh启动就会报错。因为网上大多都是Ubuntu的,当初我照着U的系统来做,根本没成功。理论上来说/usr/sbin/sshd -D就会创建了主机的rsakey,但U系统可以C系统就没成。
    当执行完后,使用docker images就能看到自己创建,如下

[root@localhost ~]# docker images
REPOSITORY                 TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
centos-ssh                 latest              c0a97978ec5c        52 minutes ago      358.6 MB
liuxin/centos              ssh                 e43a54a1a461        18 hours ago        263.2 MB
centos                     6                   f6808a3e4d9e        4 weeks ago         202.6 MB
centos                     7                   88f9454e60dd        4 weeks ago         210 MB

然后执行docker run -d -p 22 liuxin/centos:ssh、docker ps -a就可以看到

CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                   NAMES
72a06bd5bf41        liuxin/centos:ssh   /bin/sh -c '/usr/sbi   About an hour ago   Up About an hour    0.0.0.0:49153->22/tcp   sleepy_euclid

这里的49153就是宿主机的端口,22就是Docker的ssh端口
    然后运行ssh 127.0.0.1(或者其它IP) -p 49153 就可以ssh连接到Docker启动的这个了。

这里没介绍关于Docker的一些常用的命令,可以看下http://blog.chinaunix.net/uid-10915175-id-4443127.html

参考

http://blog.chinaunix.net/uid-10915175-id-4442800.html

参考
https://docs.docker.com/installation/centos/
https://docs.docker.com/userguide/dockerimages/
https://docs.docker.com/examples/running_ssh_service/

Docker之配置Centos_ssh的更多相关文章

  1. Docker下配置双机热备PXC集群

    架构: 步骤: 1.安装centos7   ,设置宿主机IP:192.168.1.224 2.先更新yum软件管理器,再安装docker 1.yum -y update 2.yum install - ...

  2. 解决docker主机配置了DaoCloud.io的加速后重启失败问题Failed to start Docker Application Container Engine

    问题说明 正常运行的docker主机配置了DaoCloud.io加速后重启报如下错 解决过程 问题原因: 重新配置加速器后发现,daocloud的配置信息是写在/etc/docker/daemon.j ...

  3. CentOS上安装 Docker-CE以及Docker 加速器配置

    在CentOS 7.0上安装 Docker-CE 官方源安装教程 https://docs.docker.com/install/linux/docker-ce/centos/#install-usi ...

  4. PhpStorm连接Docker容器配置xdebug断点调试

    本教程主要演示xdebug在PhpStorm中配置方法. 一.环境说明 1.Mac笔记本(本教程演示过程使用的是Mac OS操作系统,和windows环境是有区别的,这一点需要特别注意): 2.在Ma ...

  5. docker安装配置gitlab详细过程

    docker安装配置gitlab详细过程   获取镜像 1.方法一 1 docker pull beginor/gitlab-ce:11.0.1-ce.0 2.方法二如果服务器网路不好或者pull不下 ...

  6. docker容器配置独立ip

    一般安装docker后都会通过端口转发的方式使用网络,比如 “-p 2294:22” 就将2294抓发到22端口来提供sftp服务,这样使用起来没有问题.但端口号很难记忆,如果前边有nginx等抓发工 ...

  7. docker——网络配置

    一.网络启动与配置参数 Docker启动时会在主机上自动创建一个docker0虚拟网桥,实际上是一个Linux网桥,可以理解为一个软件交换机,它会在挂载其上的接口之间进行数据转发.同时,Docker随 ...

  8. Docker中配置国内镜像

    1. 为什么要为docker配置国内镜像   在正常情况下,docker有一个默认连接的国外官方镜像,在国外的网友访问该官方镜像自然不成问题,但是国内毕竟不是国外,由于国情不同,中国的网络访问国外官方 ...

  9. docker安装配置

    ########################################## #docker安装配置 #环境centos7 #配置docker阿里源 echo '#Docker [docker ...

随机推荐

  1. 表达式计算器(LL1文法)

    LL(1)文法求算数表达式的值递归子程序法 分析过程: 表达式文法G[E]:E->E+T|E-T|TT->T*F|T/F|T%F|FF->N^F|NN->(E)|NUM|+NU ...

  2. 如何在Maven官网下载到历史版本

    历史版本一般会隔一段时间,便找不到,官网会及时显示的是最新版本.不多说,直接进入. https://archive.apache.org/dist/maven/binaries/ 成功在Maven官网 ...

  3. nyoj 540 奇怪的排序

    奇怪的排序 时间限制:1000 ms  |  内存限制:65535 KB 难度:1   描述 最近,Dr. Kong 新设计一个机器人Bill.这台机器人很聪明,会做许多事情.惟独对自然数的理解与人类 ...

  4. 如何给Windows添加自动启动的程序

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:如何给Windows添加自动启动的程序.

  5. android 控件花屏问题

    发现自己的手机上某个界面出现了花屏,某些控件背景被拉伸过多遮住了其他控件,很难看.这种现象高概率出现,分析了下发现:一旦发生这种现象,必然 会打印下面这种log,google了下,这种log应该是硬件 ...

  6. How to find configuration file MySQL uses?

    http://www.dbasquare.com/2012/04/01/how-to-find-mysql-configuration-file/ A customer called me today ...

  7. [AngularJS + Webpack] require directives

    direictives/index.js: module.exports = function(ngModule) { //register all the directives here requi ...

  8. Winedt10 添加自定义宏

    Winedt10 添加自定义功能,并在toolbar上添加快捷命令 功能描述: 用宏实现latex+bib参考文献的一键编译. Remark: The toolbar is the most visi ...

  9. Learning Django Resources

    Learning Django Django makes it easier to build better Web apps more quickly and with less code. Web ...

  10. CSS3 动画效果合集

    @charset "UTF-8"; /*! * animate.css -http://daneden.me/animate * Version - 3.5.1 * License ...