文档章节

Docker使用系列四:CentOS 6.5 制作自动授信Docker容器镜像

活的自由
 活的自由
发布于 2014/04/20 10:01
字数 363
阅读 3774
收藏 24

这篇文章依赖于http://my.oschina.net/feedao/blog/223795 ,在前面的文章中我们制作好了两个镜像,

centos6-base和centos6-ssh,今天我们要依赖于centos6-ssh镜像,制作第三个自动授信的镜像centos-newssh

方法如下:

curl https://git.oschina.net/feedao/Docker_shell/raw/start/Docker-centos-autossh.sh | sh


一个命令就行了,这条命令会创建一个新镜像centos-newssh

开始体验,现在不需要输入root密码了:

docker run -d -p 127.0.0.1:33306:22 -m 256M centos-newssh
ssh root@127.0.0.1 -p 33306 "echo $LANG;ifconfig"

如果不想第一次连接的时候输入yes,确认连接,可以使用下面的命令:

ssh -o StrictHostKeyChecking=no root@127.0.0.1 -p 33306 "echo $LANG;ifconfig"


体验完了,我们来分析下

https://git.oschina.net/feedao/Docker_shell/raw/start/Docker-centos-autossh.sh

#!/bin/sh
[ ! -d /root/.ssh ] && mkdir -p /root/.ssh
ssh-keygen -q -N "" -t dsa -f /root/.ssh/id_dsa
KEY_PUB=`cat /root/.ssh/id_dsa.pub`
[ ! -d /root/docker-temp ] && mkdir /root/docker-temp
cd /root/docker-temp
cat >/root/docker-temp/Dockerfile <<EOF
#Dockerfile
FROM centos6-ssh
MAINTAINER feedao <feedao@163.com>
EOF
echo "RUN echo \"$KEY_PUB\" > /root/.ssh/authorized_keys && chmod 600 /root/.ssh/authorized_keys " >>Dockerfile
cd /root && cat /root/docker-temp/Dockerfile | docker build -t centos-newssh -



脚本内容比较简单,就是生成新的秘钥和公钥
ssh-keygen -q -N "" -t dsa -f /root/.ssh/id_dsa
然后把公钥自动加到Docker容器中,这里是修改Dockerfile:
echo "RUN echo \"$KEY_PUB\" > /root/.ssh/authorized_keys && chmod 600 /root/.ssh/authorized_keys " >>Dockerfile
最后创建新的镜像:
cd /root && cat /root/docker-temp/Dockerfile | docker build -t centos-newssh -

你可以把/root/docker-temp文件夹删除

rm -rf /root/docker-temp





© 著作权归作者所有

活的自由
粉丝 65
博文 80
码字总数 12547
作品 0
成都
高级程序员
私信 提问
Docker使用系列二:CentOS 6.5 制作可以ssh登录的Docker镜像

Docker使用系列一我们把镜像源改为了阿里云的,方便后续的操作。 执行这个命令就把源地址改为阿里的: curl https://git.oschina.net/feedao/Docker_shell/raw/start/ali-centos.sh | sh 第一...

活的自由
2014/04/18
12.2K
26
开源中国的 Docker 优秀文章汇总

Docker 是一个开源的 Linux 应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相...

oschina
2014/08/25
6K
11
OSChina 技术专题之 Docker 更新版(201412)

Docker 是一个开源的 Linux 应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相...

OSC编辑部
2014/10/13
8.4K
18
Docker使用系列五:CentOS 6.5 制作Docker Registry镜像

在国内使用docker pull总是不能正常拉取文件下来,现在可以自己制作镜像服务器了 希望你已经有了无需密码就能登陆的centos-newssh镜像,如果还没有,请看Docker使用系列四:http://my.oschi...

活的自由
2014/04/20
4.4K
3
docker 四.使用docker镜像.

四.Docker镜像的使用 一.Docker 安装 1.1 查看系统版本 [root@node1 ~]# cat /etc/redhat-release CentOS release 6.6 (Final) 1.2 使用epel yum源 [root@node1~]#rpm -ivh http://mirror......

786376668
2015/04/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
昨天
59
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
昨天
28
0
全世界到底有多少软件开发人员?

埃文斯数据公司(Evans Data Corporation) 2019 最新的统计数据(原文)显示,2018 年全球共有 2300 万软件开发人员,预计到 2019 年底这个数字将达到 2640万,到 2023 年达到 2770万。 而来自...

红薯
昨天
65
0
Go 语言基础—— 通道(channel)

通过通信来共享内存(Java是通过共享内存来通信的) 定义 func service() string {time.Sleep(time.Millisecond * 50)return "Done"}func AsyncService() chan string {retCh := mak......

刘一草
昨天
58
0
Apache Flink 零基础入门(一):基础概念解析

Apache Flink 的定义、架构及原理 Apache Flink 是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态或无状态的计算,能够部署在各种集群环境,对各种规模大小的数据进行快速...

Vincent-Duan
昨天
60
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部