设为首页 收藏本站
查看: 754|回复: 0

[经验分享] Docker之配置Centos_ssh

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-2-10 08:00:50 | 显示全部楼层 |阅读模式
这几天一直搞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/

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-42323-1-1.html 上篇帖子: Docker使用Dockerfile创建支持ssh服务自启动的容器镜像 下篇帖子: Docker之Dockerfile 参考
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表