Chinaunix首页 | 论坛 | 认证专区 | 博客 登录 | 注册

鑫的技术平台liuxin1982.blog.chinaunix.net

鸟在笼中,恨关羽不能张飞;Survival of the fittest

  • 博客访问: 399952
  • 博文数量: 210
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2650
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-01 13:46
  • 认证徽章:
个人简介

鸟在笼中,恨关羽不能张飞;Survival of the fittest

文章分类

全部博文(210)

微信关注

IT168企业级官微



微信号:IT168qiye



系统架构师大会



微信号:SACC2013

订阅
热词专题
友情链接
Docker之配置Centos_ssh 2014-08-28 11:56:39

分类: 虚拟化

    这几天一直搞KVM,但发现目前的应用实在是太简单了,多启动几个kvm有点浪费了。现在N多人都在讨论Docker,所以就查了下看看,安装在Centos6.5上,其它的也没多试。
   使用Centos安装它还是挺方便的,配置好epel源后直接 yum install docker-io即可安装。service docker start就启动了,还是比较简单的。依赖安装包有libcgroup,lxc,lxc-libs。cgroup lxc这里不介绍了。
    因为Centos比较熟悉,所以先下载它。获取最新的docker image 使用 docker pull centos即可。使用docker run -i -t centos /bin/bash就可以运行了。当初以为运行后直接配置个IP、启动SSH就行了,可搞了半天都不对,N多错误。后来找了下,Docker其实不是这个样子玩滴。
    所以综合了下,还是自己根据Dockerfile来创建一个新的镜像吧,首先就是要编译Dockerfile,它的内容如下
# cat Dockerfile
# liuxin/centos:ssh
#
# VERSION               0.0.1
 
FROM        centos
MAINTAINER  liuxin "liuxin@abc.com"
 
RUN         yum install -y openssh openssh-server openssh-clients
RUN         mkdir /var/run/sshd
RUN         ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
RUN         ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
RUN         /bin/echo 'root:aaaaaa' |chpasswd
RUN         useradd liu
RUN         /bin/echo 'liu:aaaaaa' |chpasswd
RUN         /bin/sed -i 's/.*session.*required.*pam_loginuid.so.*/session optional pam_loginuid.so/g' /etc/pam.d/sshd
RUN         /bin/echo -e "LANG=\"en_US.UTF-8\"" > /etc/default/local
EXPOSE      22
CMD         /usr/sbin/sshd -D
    然后在文件所在目录下执行 docker build -rm -t liuxin/centos:ssh . (这里有个点,别忽略了)
,等一会就可以看到过程了,这里就不复制了。
    这里的两条ssh-keygen要加上,如果不加ssh启动就会报错。因为网上大多都是Ubuntu的,当初我照着U的系统来做,根本没成功。理论上来说/usr/sbin/sshd -D就会创建了主机的rsakey,但U系统可以C系统就没成。
    当执行完后,使用docker images就能看到自己创建,如下

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
liuxin/centos       ssh                 2854690ce065        About an hour ago   306.7 MB
ubuntu              latest              7dc370b825b0        2 hours ago         275.3 MB
centos              centos7             b157b77b1a65        4 weeks ago         243.7 MB
centos              latest              b157b77b1a65        4 weeks ago         243.7 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

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




阅读(15031) | 评论(4) | 转发(2) |
给主人留下些什么吧!~~

gray19822014-09-26 10:32:17

auqf12:8cad4714fc61        vlang:ssh           /usr/sbin/sshd -D   21 hours ago        Up 21 hours         0.0.0.0:49153->22/tcp   tender_wozniak3 
可以telnet上端口,按照这里面的文档应该是直接yum安装的,不知道少什么东西啊

确定下是不是根据上面Dockerfile创建的镜像
Docker里的ssh是不是有生成sshkey了

回复 | 举报

auqf122014-09-25 16:22:24

gray1982:它的组件很少,yum的话应该就直接装了
你给的信息量比较少
看看是不是没有把端口映射出来

8cad4714fc61        vlang:ssh           /usr/sbin/sshd -D   21 hours ago        Up 21 hours         0.0.0.0:49153->22/tcp   tender_wozniak3 
可以telnet上端口,按照这里面的文档应该是直接yum安装的,不知道少什么东西啊

回复 | 举报

gray19822014-09-25 10:28:07

auqf12:为什么我的一直不能ssh呢,总是提示Read from socket failed: Connection reset by peer,难道是什么组件没有安装吗

它的组件很少,yum的话应该就直接装了
你给的信息量比较少
看看是不是没有把端口映射出来

回复 | 举报

auqf122014-09-24 18:34:58

为什么我的一直不能ssh呢,总是提示Read from socket failed: Connection reset by peer,难道是什么组件没有安装吗

评论热议
请登录后评论。

登录 注册