当前位置: 首页 > article >正文

Docker基本管理--Dockerfile镜像制作(Docker技术集群与应用)

容器端口映射;

容器间通信;

容器数据卷;

DockerFile;

容器端口映射:

实验环境:紧接着之前的快照,将该文件夹拉取进去;

然后执行导入的脚本,会将该目录下所有打包好的镜像文件导入进入。

然后进行查看;

这样简单的一个实验环境就搭建好了;

然后创建容器;

登录到容器中;

获取容器的IP;

然后退出容器尝试访问Apache服务;

发现可以访问;

但是创建该容器的时候没有为该容器映射外部的访问端口,所以外部的客户端无法访问到该容器;

大概解释为:

外部客户端:

windos宿主机做客户端;

内部客户端:

docker主机上做客户端;

再以该镜像为支持,创建一个容器,但是创建的时候加上-P的选项;

看下会发生什么样的事情;

-P:是port的意思,即端口;

加上-P的选项,自动帮助我们完成端口映射的策略;

0.0.0.0:为docker主机的IP;

32768:映射到该容器的80端口;

尝试访问:

IP要访问docker主机的IP,但是端口要访问容器分配的端口;

然后再以外部客户端的身份尝试访问;

但是注意:

端口号是随机分配的,例如DHCP中的地址池一样;

创建的时候手动指定要映射的端口即可;

-P:自动分配映射端口;

-p:手动指定映射端口;

8080为docker主机提供的端口,后面还是容器的端口;

这样就可以固定端口去访问了,而不是让docker主机自动为容器分配一个随机的端口;

如何自己指定网页文件,那么就需要登录到容器中了;

但是这种方式麻烦且不具备永久性,这些文件会随着容器的删除也消失的;

所以不建议把数据放到容器里面存放;

容器间通信:

先创建一个容器:并指定容器的名称;

然后创建第二个容器,且在创建的时候指定链接;--link;

冒号前是:把web02链接到web01;web01作为web02的源容器,web02作为web01的接收容器;

冒号后是:在web02要登录进去的话,为web01起的一个别名。

进入到web02中进行验证;

会在其hosts文件中,记录源容器的IP和名称;

还可以ping其容器的IP;

还可以登录到web01中尝试访问web02;

可以发现hosts文件中并没有保存web02相关的信息;

不过可以用IP的方式进行访问;

另外一种容器间通信的方式:

以逻辑子网的方式实现容器间通信。

为docker环境创建不同的逻辑子网;

然后在创建容器的时候直接让容器加入到指定的网络中;

然后登录到任意一个新创建的容器中,查看该容器的IP;

每一个创建出来的子网都不同;

这样不用做任何设置就可以用容器的名字进行访问了;

这样就实现了,也限制容器与容器之间通信控制了;

容器数据卷:

为保证数据的持久化存储,而不能因为误删除了容器,数据也随之消失;

DocketFile:自定义镜像的技术

自己做一个nginx的镜像

nginx的源码包

nginx的配置文件

基础镜像:centos


http://www.kler.cn/a/303422.html

相关文章:

  • 浅谈:基于三维场景的视频融合方法
  • ArkTs简单入门案例:简单的图片切换应用界面
  • 算法——移除链表元素(leetcode203)
  • 如何用WordPress和Shopify提升SEO表现?
  • 高频 SQL 50 题(基础版)连接部分
  • 在Flutter中,禁止侧滑的方法
  • ubuntu20.04 Qt6引用dcmtk库实现dicom文件读取和字符集转换
  • CSP-J 之计算机基本结构
  • YOLO介绍—datawhale
  • C语言 | Leetcode C语言题解之第404题左叶子之和
  • shell脚本语法
  • ASP.NET MVC 迅速集成 SignalR
  • 【spring】IDEA 新建一个spring boot 项目
  • 【无人机设计与控制】旋转无人机摆锤的SDRE仿真
  • VSCode 编写 vue 项目之一键生成 .vue 页面模版
  • 计算机网络:概述 - 性能指标
  • 【Linux 从基础到进阶】Docker Compose 编排工具使用
  • CategoriesController
  • 什么是图像的边缘?说说边缘检测的任务以及基本原理?
  • 无人机应用新纪元:图形工作站配置推荐与硬件解析
  • 网络安全-dom破坏结合jq漏洞以及框架漏洞造成的xss-World War 3
  • Python | Leetcode Python题解之第402题移掉K位数字
  • labview禁用8080端口
  • 合宙低功耗4G模组Air780EX——硬件设计手册01
  • 同步和异步是两种不同的程序执行方式
  • duckdb 连接postgres 和 jdbc 的使用