![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Docker
是小李呀~
这个作者很懒,什么都没留下…
展开
-
docker网络(三)
Docker中所有网络接口都是虚拟的,虚拟的转发效率高(内网传递文件)。 只要容器删除,对应的网桥一对就没了! 思考一个场景:我们编写了一个微服务,database url=ip: 项目不重启,数据库ip换了,我们希望可以处理这个问题,是否可以通过名字来进行访问容器(类似网关路由配置)? 解决方案:再启动一个03link02(第4行),就是03的网络和02就连接在一起了。03ping02可以ping通(反向不可以,因为没有配置) 探究: docker network inspect 网络id 网段相.原创 2021-06-02 13:36:53 · 86 阅读 · 0 评论 -
docker网络(二)
原理 我们每启动一个docker容器,docker就会给docker容器分配一个ip,我们只要按照了docker,就会有一个网卡docker0,桥接模式,使用的技术是evth-pair技术! 再次测试ip addr,比刚刚多了一个262,就是启动一个容器之后发现容器中又多了一个262网卡,262后面还有一个261(上面一张图有261,也就是容器外部的) 我们发现这个容器带来网卡,都是一对对的 veth-pair 就是一对的虚拟设备接口,他们都是成对出现的,一端连着协议,一端彼此相连 正因为有这个特性.原创 2021-06-02 13:36:41 · 118 阅读 · 0 评论 -
docker网络(一)
把所有的容器全部移除 现在都是空的了,就可以测试了,网卡有三个 问题: docker 是如果处理容器网络访问的? 测一下容器外部能不能ping通容器内部,先随便启动一个tomcat -p端口号随便暴露 下载完之后启动一下, -it交互模式执行 ...原创 2021-06-02 12:27:01 · 73 阅读 · 0 评论 -
发布自己的镜像到阿里云服务器
1、地址 https://hub.docker.com/注册自己的账号 2、确定这个账号可以登录 3、登录,然后在我们的服务器上提交自己的镜像 通过命令行登录,登录了才能放上去 登录成功,可以提交镜像了,push的时候一定要有作者的名字和版本号 正常来讲应该是第一种方式push,但是之前push过了,就用的没有作者的名字和版本号的方式,回车就push成功了,也可以有解决方案的,加tag(这里不截图了) 这样就push上去了 ...原创 2021-06-01 00:07:51 · 139 阅读 · 0 评论 -
tomcat镜像实战(二)
现在是发布一个网站测一下,随便搜一个xml 直接粘过来就可以,然后wq 现在找一个jsp的文件(随便复制一个可以用的jsp文件就行,可以跑出来页面就行) 上面的卷挂载错了,再挂载回来就可以了,路径写错了,等会再重启挂载就可以了 然后点击一下第二个框就算是刷新了,网页就可以成功访问了,也就是本地修改文件 ...原创 2021-06-01 00:07:43 · 53 阅读 · 0 评论 -
tomcat镜像实战(一)
1、准备镜像文件,准备镜像文件 tomcat压缩包,因为tomcat是依赖于Java的所以还需要一个jdk压缩包 这里有jdk和tomcat的安装包,通过fdp软件上传到本地(之前上传过,当前是传到kuangshen目录下的 这样准备好压缩包之后就可以编写dokerfile文件 2.编写dockerfile文件,官方命名Dockerfile,build会自动寻找这个文件,就不需要-f指定了! 复制当前目录下的README文件拷贝到容器内部的/usr/local/README.txt 待会在容器的c原创 2021-06-01 00:07:36 · 485 阅读 · 0 评论 -
测试自己写的镜像
现在是把容器退出的状态 第二行是展现当前目录的所有结构(现在就是启动centos,展示一个命令,最简单可以这么简单)然后wq保存一下,开始构建 Run运行的时候只会执行最后一个CMD,也只有最后一个CMD生效。现在想在这上面加一个参数(追加一个命令),刚才里面写的是-a,现在再加一个-l,本应该是-al(展示列表的详细数据),但是现在会报错 ...原创 2021-06-01 00:07:28 · 100 阅读 · 0 评论 -
DockerFile指令以及自己写镜像(一)
CMD和ENTRYPOINT的区别 CMD:现在在容器写ls -a命令,容器外执行 dockers run -l 命令,就会把ls -a用-l 替换掉(也就是容器内是-l命令了) ENTRYPOINT:现在在容器写ls -a命令,容器外执行 dockers run -l 命令,就会把-l 追加到ls -a后面(也就是容器内是ls -a-l命令了) 自己写镜像: 第一个命令查看home文件夹下有哪些文件,第二个命令创建一个文件夹,然后把文件放在这个文件夹下,然后进入这个文件夹,然后在新创建的文件..原创 2021-06-01 00:07:20 · 232 阅读 · 0 评论 -
DockerFile构建
1.DockerFile介绍 dockerfile是用来构建docker镜像的文件!命令参数脚本! 构建步骤: 1、 编写一个dockerfile文件 2、 docker build 构建称为一个镜像 3、 docker run运行镜像 4、 docker push发布镜像(DockerHub 、阿里云仓库) 去官网看一下centos的官方镜像 .DockerFile构建过程 基础知识: 1、每个保留关键字(指令)都是必须是大写字 2、执行从上到下顺序 3、#表示注释 4、每一个指令都会创建提交一个新的原创 2021-06-01 00:07:12 · 95 阅读 · 0 评论 -
数据卷容器
测试 第二个命令的第二条线是起的名字,第三条线一定要加上版本号(不然会默认最新的版本),或者改成容器的id,进入容器之后会看到挂载的目录(ls),第二个命令就是启动,然后-l会看到数据卷 然后CTRL+p+l退出当前,启动03(方法和02一样,在03里创建的文件在01里也可以看到) 既然02 03都是继承01,把01停掉或删除 停掉 但是这个时候查看文件依旧在,数据共享不应该是容器没了数据就没了,只要是有一个容器还在用这个数据,数据就得在,容器之间是相互隔离的,但是数据是共享的 ...原创 2021-06-01 00:07:04 · 69 阅读 · 0 评论 -
初识Dockerflie
Pwd是当前目录,现在进到刚刚写的文件夹的目录,在这个文件夹下建一个文件存脚本, 镜像是跑在服务器上的,要指定什么作为基础(这里指定centos),有了这个基础之后就可以在这里面挂载卷了(通过VOLUME挂载,这是在生成的时候就挂载出来),可以挂载多个目录出来,为了确定生成构建成功了,输出一个end,构建完之后,我们想让他进去走的是bash控制台,所以dockerfile1里就写了这样几句话,然后wq保存一下。 然后回查一下内容,没有问题的话就可以通过build生成了,要建造一个镜像,-f代表fi...原创 2021-06-01 00:06:58 · 53 阅读 · 0 评论 -
具名和匿名挂载
-v之后直接写容器内路径也是可以的,不写主机的路径就会自动生成一个目录,-P(大写)是随机映射端口 这样写就是把etc下面的nginx直接挂载出来,测试一下,不指定主机名就是直接是容器内的目录 第一个命令挂载完之后就会下载,下载完之后这里是volume(卷),看一下help(可以创建一个卷,查看卷是怎么做的,查看当前所有的卷,移除所有没在用的所有卷,移除所有的卷),现在查看一下所有的卷(镜像),这里是没有名字的镜像所以就是右边的乱码(这些乱码其实就是容器的名字),这些没有指定名字的就叫匿名卷挂载,这是因为原创 2021-06-01 00:06:50 · 81 阅读 · 0 评论 -
docker笔记(十)
Mysql的数据不应该放在容器内,应该挂载出来,mysql下面有data目录,所有的数据都应该放在data目录下。(退出上面的容器,重新启动一个容器),昨天已经下过mysql了,所以这边是可以搜到的(要用一个镜像先搜到他,搜到就代表可以用,然后按照自己的目录去下载(拉取镜像)) 第二个命令是后台运行暴露端口(-d -p)然后-v加挂载(可以同时挂载(映射)多个),冒号前是本地的,冒号后是容器的,这里映射里两个一个是配置文件的,一个是数据的。又因为安装启动mysql需要配置密码,-e配置密码(-e其实.原创 2021-06-01 00:06:43 · 58 阅读 · 0 评论 -
docker笔记(九)
Docker将应用和环境打包成一个镜像,运行的时候就变成了一个容器。 不希望把所有的数据都放在容器中,容器一删数据也就没有了 主机的home目录下是没有ceshi这个文件夹的,把docker容器home文件夹下的ceshi文件夹复制到主机的home文件夹下,然后启动centos镜像进入命令行,然后再开一个目录cd到home目录下(这里是主机),发现有ceshi文件夹了。 现在让容器的home和主机的home文件夹连接起来,让在容器的home放的东西自动同步到主机的home文件夹下,在主机的ho.原创 2021-06-03 07:40:04 · 99 阅读 · 0 评论 -
docker笔记(八)
下面这一行是拷贝代码; 现在的webapps里面是空的(ls命令),然后返回上一个文件夹,把里面的webapps.dist文件夹的全部内容拷贝到webapps中,这样的话里面才有项目,现在就是tomcat官方镜像的webapps里默认是没有东西的,我们能不能自己做个镜像默认webapps里面是有东西的(现在做的就是这样的事情)。 这样项目就进来了,是我们手动操作的,拷贝进去就可以用了(先退出一下) Tomcat部署成功了,现在部署的这个tomcat是自己改好的(webapps里面是有东西的),..原创 2021-05-31 08:01:06 · 231 阅读 · 0 评论 -
docker笔记(七)
这里可以看到有几个是运行着的进程,已经运行了几个容器等等。 这样是进入了tomcat(这是一个前台应用)原创 2021-05-31 08:00:40 · 74 阅读 · 0 评论 -
docker笔记(六)
下载完会自动启动成功,接下来就可以访问测试了 现在是在外网访问,linux要开通阿里云外网(开通方法在讲linux的时候讲了)原创 2021-05-31 08:01:00 · 56 阅读 · 0 评论 -
docker笔记(五)
先查看当前运行的容器(无),然后启动进入容器,ctrl+q+p 退出容器,第三条命令查看当前运行的容器,第四条命令查看当前运行容器的前十条日志(没有日志),10后面是容器的id号,然后做一个绝杀,自己写一个shell脚本 第一个命令查看当前日志内容(空的),第二个命令自己写shell脚本日志(while循环,打印kuangshen,每一秒打印一次)回车shell就运行起来了(不停的循环执行)。第三个命令可以看到容器的id,然后就可以通过id看容器的日志了。 这样是只看10条,一秒钟打印一条。 这...原创 2021-05-31 08:00:30 · 125 阅读 · 0 评论 -
docker笔记(四)
这里的已经存在是指刚刚已经下载了最新的版本,现在下载5.7的,和最新版本重复的部分已经存在了就不用下载了,只需要下载新的就可以了。 通过这个命令就可以看到版本信息了 把上图(三行)的容器都替换成镜像。 删除可以通过名字删也可以通过id删(一般是通过id删),这里是通过id删 直接后台启动不进去直接启动 docker run -d就是后台启动会返回一个容器的id 但是为什么docker ps(查看当前运行的容器的时候,centos后台停掉了),因为没有前台应用,他认...原创 2021-05-31 08:00:25 · 52 阅读 · 0 评论 -
docker笔记(三)
Vm开的是两个虚拟的主机(完全虚拟了两个电脑),而Docker是两个容器,运行在Docker上。 在官网里面找文档(docs) -aq就是显示所有的镜像 Docher是有dockerhub的,就是一个商店原创 2021-05-31 08:00:18 · 60 阅读 · 0 评论 -
狂神说Docker笔记(二)
第八页原创 2021-05-15 16:33:33 · 95 阅读 · 0 评论 -
狂神说Docker笔记(一)
先上视频链接 狂神说原创 2021-05-15 16:15:02 · 179 阅读 · 0 评论