从零搭建Docker&k8s环境及使用+理解
虽然对于网络来说是炒冷饭,但是我是第一次弄,毕竟网上总是找不到你想要的答案。╮(╯▽╰)╭第一步安装Linux CentOS 7,我是按这个帖子按的,很详细。只是帖子里按的是8我按的是7。...
虽然对于网络来说是炒冷饭,但是我是第一次弄,毕竟网上总是找不到你想要的答案。╮(╯▽╰)╭
第一步
安装Linux CentOS 7,我是按这个帖子按的,很详细。
只是帖子里按的是8我按的是7。
按了一天的操作系统,虚拟机就一直连不上网,网上搜了一堆答案,没解决,应验了文章里我的第一句话,最后发现是我把虚拟机的网络给禁用了,服了,启用之后好用了。
这里我安装了1个虚拟机,然后复制了2个,一共3台虚机,准备以后做个K8S的集群。但是安完我什么也没设置,就是系统默认配置
第二步
安装一个Docker,
安装一种是安装静态的解压缩之后直接启动,一种是下载rpm之后安装,静态安装不建议使用,因为会少好多东西,再看别的帖子发现对应的路径下根本没有文件,还是推荐使用rpm安装。
RPM安装如下:
官网rpm下载地址
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
把下载的rpm上传到服务器,我在home下自己创建了一个,docker_install
进入之后运行安装命令:yum install -y *.rpm
我安装没有遇到任何缺少依赖的问题,安装完之后运行
静态安装如下:
官网静态安装下载地址下载:https://download.docker.com/linux/static/stable/x86_64/
我下载的是我这个时间点最新的版本docker-19.03.8.tgz,我发现还有一个跟他对应的docker-rootless-extras-19.03.8.tgz,这个包我没下,暂时不知道干什么的。
下载之后我把它拷贝到虚拟机1的/home目录下,
之后解压缩命令:tar -xvf docker-19.03.8.tgz
然后把docker拷贝到命令集合里:cp docker/* /usr/bin/
然后启动docker,这个命令之后可以看到启动日志,启动成功应该挺容易看出来的:dockerd &
成功启动截图
不管是rpm还是压缩包安装,成功之后测试如下:这里还有一个坑,就是我第2个敲的命令,下边会说一下这个坑。
之后敲几个个docker基本命令看是否成功了:
查看版本,这个命令返回结果不能代表docker启动成功了,我之前就是可以查看版本但是一直失败: docker -v
查看镜像列表,这个命令如果成功应该是代表docker启动成功了,下边是两个命令截图:docker image ls
本来一天能弄好的东西,我弄了3,4天,公司网基本什么都访问不了,所以大部分时间都在调试网络,结果还是不行,后来换成阿里云,直接搞定了。
这里先说一个虚拟机的坑,我用的是VM12,用的NAT模式,这个模式弄完除了一个问题,我本机可以telnet通百度的80断开,但是我本机上用VM12按的虚拟机就不行,无法telnet通百度,所以到最后我也不知道是我的虚拟机连不上网,还是就是只是不能telnet而已。表现形式就是,我连不上Docker官方镜像仓库,也连不上国内163的镜像仓库,虽然我本机浏览器这2个仓库都能打开。就这个破事我弄了半天,最后发现有人在网上说NAT模式telnet有问题,之后我就不纠结这个问题了。但是我运行Linux命令:yum update还好用可以下载更新包,我同事说这是能连上网的表现。可始终连不上Docker仓库,这就导致了,我的DockerFile无法运行,因为DockerFile文件里第一句话必须得是FROM,是从Docker镜像上下东西连不上网就不好使,你的docker服务也没法从官网下载下载镜像。
环境按完之后,准备发布自己的镜像,我是参考下边这个帖子弄的,eclipse我试了一下,因为访问不了谷歌,也可能是公司网络原因,反正eclipse安装Docker插件我是按失败了。所以用IDEA弄的,这个帖子就是用IDEA发布的。
https://blog.csdn.net/wugenqiang/article/details/86560752
按照帖子发完之后,docker可以跑我镜像程序了,之后遇到一个小坑,因为按照理论我的镜像应该是成功发布到阿里云服务器了,但是我敲了上边的命令docker image ls,什么也没有,我都不知道这个命令是干什么的了,有知道的希望帮我解答一下,谢谢。
之后我用了命令docker images,查到了我上传的镜像,说明发布成功了。
这里说下我的理解,如果我就几台服务器其实我觉得是不需要docker的,但是如果我有几十~几万台服务器,手动发版就不现实了,这时候就需要用到docker和K8S了,后续会继续研究K8S。
更多推荐
所有评论(0)