这几日在学习docker、遇到的问题数一年都数不完,网上大多数都是ubuntu的,百度或者谷歌的时候心好累。写写文档来帮助使用centos的docker爱好者们。
docker基本操作这里就不介绍了 编写时间为:2015年12月25日17:41:41
如果你是准备开始学习,或者准备想用ssh实现连接容器这个功能时,请先自己折腾一下。不然达不到学习的目的哦
ssh -p 32772 root@192.168.0.38
Read from socket failed: Connection reset by peer
看到这个报错我估计大多数同学都很烦燥,恭喜你,找到了这篇文章
这里我们直接上dockerfile
#syw/centos:ssh
#
#by:V
FROM centos:centos6.6
MAINTAINER syw "907765003@qq.com"
RUN yum -y install openssh-server;yum clean all
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:123456'|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
使用build打包成image
docker build -t syw/centos6:ssh .
这里有时候会因为网络原因,或者一些其他原因导致打包的镜像名称为<none> ,如果出现这个错误就说明 打包的这个镜像是错误的。(也可以注意build过程中的strin)
如果成功会提示打包成功的哦
Successfully built 3ea906c5b3a9
这里我们创建一个容器来实验一下
docker run -d -P --name endtest syw/centos6:ssh
在查看容器状态,如果没有退出说明试验成功docker ps
如果容器里面没有持续运行的进程,容器就会退出。 这里我们看到容器暴露的22端口对应宿主机的32769
所以我们来ssh验证一下
退出不关闭容器的命令为 ctrl+p+q 这里也顺便记录一下KVM 的为 ctrl+[
有疑问可留言!