这几日在学习docker、遇到的问题数一年都数不完,网上大多数都是ubuntu的,百度或者谷歌的时候心好累。写写文档来帮助使用centos的docker爱好者们。

docker基本操作这里就不介绍了        编写时间为:2015年12月25日17:41:41

如果你是准备开始学习,或者准备想用ssh实现连接容器这个功能时,请先自己折腾一下。不然达不到学习的目的哦

  1. ssh -p 32772 root@192.168.0.38
  2. Read from socket failed: Connection reset by peer

看到这个报错我估计大多数同学都很烦燥,恭喜你,找到了这篇文章

这里我们直接上dockerfile

  1. #syw/centos:ssh
  2. #
  3. #by:V
  4.  
  5. FROM centos:centos6.6              
  6. MAINTAINER syw "907765003@qq.com"       
  7. RUN yum -y install openssh-server;yum clean all
  8. RUN mkdir /var/run/sshd
  9. RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
  10. RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
  11. RUN /bin/echo 'root:123456'|chpasswd
  12. RUN /bin/sed -i 's/.*session.*required.*pam_loginuid.so.*/session optional pam_loginuid.so/g' /etc/pam.d/sshd
  13. RUN /bin/echo -e "LANG=\"en_US.UTF-8\"" > /etc/default/local
  14. EXPOSE 22
  15. CMD /usr/sbin/sshd -D

使用build打包成image

  1. docker build -t syw/centos6:ssh .

这里有时候会因为网络原因,或者一些其他原因导致打包的镜像名称为<none> ,如果出现这个错误就说明 打包的这个镜像是错误的。(也可以注意build过程中的strin)

如果成功会提示打包成功的哦

Successfully built 3ea906c5b3a9

这里我们创建一个容器来实验一下

  1. docker run -d -P --name endtest syw/centos6:ssh

在查看容器状态,如果没有退出说明试验成功docker ps

如果容器里面没有持续运行的进程,容器就会退出。 这里我们看到容器暴露的22端口对应宿主机的32769

所以我们来ssh验证一下

退出不关闭容器的命令为 ctrl+p+q  这里也顺便记录一下KVM 的为 ctrl+[

                                              有疑问可留言!

Centos上Docker 使用dockerfile构建容器实现ssh的更多相关文章

  1. docker:Dockerfile构建LNMP平台

    docker:Dockerfile构建LNMP平台   1.dockerfile介绍  Dockerfile是Docker用来构建镜像的文本文件,包含自定义的指令和格式.可以通过docker buil ...

  2. docker通过dockerfile构建JDK最小镜像,Docker导出导入镜像

    docker通过dockerfile构建JDK最小镜像,Docker导出导入镜像 一.docker通过dockerfile构建JDK最小镜像 1.1 下载JRE 1.2 解压JRE,删除相关不需要文件 ...

  3. docker使用Dockerfile构建ssh容器

    一.使用Dockerfile构建centos 1.创建 Dockerfile mkdir centos # 创建一个目录存放之后的Dockerfile,目录名无所谓 cd centos # 进入目录 ...

  4. Docker 使用Dockerfile构建tomcat镜像

    Dockerfile概念: 镜像的定制实际上就是定制每一层所添加的配置.文件.如果我们可以把每一层修改.安装.构建.操作的命令都写入一个脚本,用这个脚本来构建.定制镜像,那么之前提及的无法重复的问题. ...

  5. Docker使用Dockerfile构建新的镜像

    构建镜像步骤; 1.创建Dockerfile文件,该文件是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明. vim Dockerfile //每一个指令都会在镜像上创建一个新 ...

  6. Docker 使用Dockerfile构建redis镜像

    Dockerfile实现: FROM centos: MAINTAINER hongdada "hongdaqi159505@gmail.com" WORKDIR /home RU ...

  7. Docker中使用多阶段Dockerfile构建容器镜像image(镜像优化)

    使用多阶段构建 预计阅读时间: 6分钟 多阶段构建是守护程序和客户端上需要Docker 17.05或更高版本的新功能.多阶段构建对于那些努力优化Dockerfiles同时使其易于阅读和维护的人来说非常 ...

  8. Docker build Dockerfile 构建镜像 - 二

    Dockerfile 制作镜像 https://hub.docker.com/ 搜索需要镜像: https://hub.docker.com/_/centos/ 官方示例: centos:6 1.这里 ...

  9. Docker:dockerfile构建php项目 [八]

    一.把项目封装成docker镜像的步骤 把项目封装成docker镜像的步骤: 1.先运行一个基础容器,手动制作docker镜像 2.编写dockerfile,构建镜像 3.测试运行 二.dockerf ...

随机推荐

  1. 圆形图片CircleImageView

    github源码路径: https://github.com/hdodenhof/CircleImageView 第一步:将CircleImageView复制 第二步:将attrs.xml复制 第三步 ...

  2. Android的ADB配置环境和adb指令使用

    adb的全称为Android Debug Bridge,就是起到调试桥的作用,作为一名开发者倒是常用到这个工具.借助adb工具,我们可以管理设备或手机模拟器的状态.还可以进行很多手机操作,如安装软件. ...

  3. 技术:使用Amazon S3接口云存储(Java版)

    http://blog.sina.com.cn/s/blog_6c7c14270102wait.html

  4. TODO软件工程--如何预算项目的工期

    我的项目后台接口已经开发好,是前人留下的接口,现在只需要和前端联调,本以为后台的开发周期短,可以提早上线,可以因为旧接口不兼容新的要求 不得不重新写,造成了工期的延误. 如何计算一个工期被提上日程.

  5. The StringFormat property

    As we saw in the previous chapters, the way to manipulate the output of a binding before is shown is ...

  6. ural 1338. Automobiles

    1338. Automobiles Time limit: 3.0 secondMemory limit: 64 MB Everyone knows what traffic congestion i ...

  7. 20145304 第五周Java学习报告

    20145304<Java程序设计>第5周学习总结 教材学习内容总结 1.使用try.catch: 如果使用了try.catch,编译时会尝试执行try区块中的程序代码,如果有错误,执行流 ...

  8. WPF standard ComboBox Items Source Change Issue

    Today I encountered an issue with the WPF standard CombBox where if the bound ItemsSource (collectio ...

  9. OpenResty 简单编写一个Module

    使用 Lua module 来进行 Lua 代码的复用是推荐的做法.然后在用户代码中直接用require()来调用 module代码: local myTest = {} function myTes ...

  10. ACM 背包问题

    背包问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 现在有很多物品(它们是可以分割的),我们知道它们每个物品的单位重量的价值v和重量w(1<=v,w< ...