利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验)
2018-03-29 13:46
549 查看
【利用K8S技术栈打造个人私有云系列文章目录】
利用K8S技术栈打造个人私有云(连载之:初章)
利用K8S技术栈打造个人私有云(连载之:K8S集群搭建)
利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手)
利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验)
利用K8S技术栈打造个人私有云(连载之:资源控制研究)
利用K8S技术栈打造个人私有云(连载之:私有云客户端打造)
利用K8S技术栈打造个人私有云(连载之:总结)(Coming Soon…)
任何一家云主机厂商提供给用户的主机功能其实讲白了就是一个操作系统基础镜像的运行实例。因此本篇博文将讲解如何在本地构建一个带ssh组件的centos底包镜像并上传到docker hub上供下载使用。
docker hub注册
注册网址:https://hub.docker.com/
命令行中登录到docker hub
命令行中输入:docker login
制作centos7.4镜像
1、第一步:去远端拉取一个最新的centos最基础镜像,基于此镜像来制作
docker pull centos
2、第二步:启动该docker容器
docker run -it centos:latest /bin/bash
3、第三步:在启动的容器中来安装sshd
yum -y install openssh-server yum -y install openssh-clients
4、第四步:我们来尝试启动一下sshd服务,会发现有报错
启动sshd服务命令:/usr/sbin/sshd -D
报如下错误:
Could not load host key: /etc/ssh/ssh_host_rsa_key Could not load host key: /etc/ssh/ssh_host_ecdsa_key Could not load host key: /etc/ssh/ssh_host_ed25519_key
我们来解决以上错误:
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N "" ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N "" ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N ""
此时再次来启动sshd服务应该无错误了
5、第五步:编辑sshd_config配置文件
执行命令:vim /etc/ssh/sshd_config
将配置文件中原本
UsePAM yes换成
UsePAM no
6、第六步:修改root的密码
执行命令:passwd root
输入两次密码即可
7、第七步:我们用exit命令来退出容器
8、第八步:基于刚退出的容器我们来制作带ssh功能的centos镜像
docker commit bf5b84f8e2d8 docker.io/hansonwang/centos7.4_ssh
(1)注意此处的bf5b84f8e2d8即为刚才运行的容器的id,可用docker ps -a查看
(2)注意此处的commit格式,必须为docker.io/<你的dockerhub用户名>/centos7.4_ssh
push镜像到远端
docker push docker.io/hansonwang/centos7.4_ssh:latest
同样需要注意此处的push格式,必须为docker.io/<你的dockerhub用户名/完整的镜像名
如下图所示:
同时我们去docker hub上也能看到我们刚push的镜像:
效果验证
为了验证镜像确实被推到远端,我们将本地刚打包好的镜像删除,然后从远端pull下来运行看看docker pull hansonwang/centos7.4_ssh
可以成功pull下来:
我们来测试一下该镜像里是否包含有ssh组件:运行其并用ssh连接到容器中:
运行容器:
docker run -d -p 2222:22 docker.io/hansonwang/centos7.4_ssh:latest /usr/sbin/sshd -D
ssh接入:
ssh root@localhost -p 2222
此时会让你输入密码,然后成功登入容器之中:
后记
作者更多的原创文章在此相关文章推荐
- 利用K8S技术栈打造个人私有云(连载之:K8S资源控制)
- 利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手)
- 利用K8S技术栈打造个人私有云(连载之:K8S资源控制)
- 利用K8S技术栈打造个人私有云(连载之:K8S集群搭建)
- 利用K8S技术栈打造个人私有云(连载之:K8S资源控制)
- Docker实践(三)应用场景(创建私有库、用dockerfile制作自己应用镜像、利用私有库发布)
- 如何利用百度霸屏技术打造个人品牌
- Docker制作私有的基础镜像
- 转:如何制作一个定制的 PHP 基础 Docker 镜像(一)
- 用wordpress打造自己个人技术博客全过程(经验分享)
- 如何基于K8S打造轻量级PaaS平台 - 容器技术爱好者 - CSDN博客
- 利用LaTex制作个人简历
- 测试环境docker化(一)—基于ndp部署模式的docker基础镜像制作
- 利用系统镜像ISO文件制作本地yum源
- 利用mkfs.ubifs和ubinize两个工具制作UBI镜像
- 用wordpress打造自己个人技术博客全过程(经验分享)
- alpine(Go环境)Docker基础镜像制作
- .NET编程技术——实验08:利用GDI+技术生成简单验证码,类似excel的数据折线图、并保存为图片