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

asp.net 发布网站 ftp看剧资源网站怎么做的

asp.net 发布网站 ftp,看剧资源网站怎么做的,网站业务需求文档,上海文化传媒有限公司一、简介 1、docker的基本结构是什么#xff0c;包含哪些组件#xff1f; docker的基本机构是c/s模式#xff0c;即客户端/服务端模式。 由docker客户端和docker守护进程组成。docker客户端通过命令行或其它工具使用docker sdk与docker守护进程通信#xff0c;发送容器管理…一、简介 1、docker的基本结构是什么包含哪些组件 docker的基本机构是c/s模式即客户端/服务端模式。 由docker客户端和docker守护进程组成。docker客户端通过命令行或其它工具使用docker sdk与docker守护进程通信发送容器管理请求。docker守护进程接收并处理请求调用docker引擎执行容器的创建、运行、停止等操作。docker守护进程接收并处理请求调用docker引擎执行容器的创建、运行、停止等操作。docker引擎还负责与docker仓库交互、搜索、上传镜像。docker仓库是一个存储镜像的服务可以是公有的或私有的。 2、docker为什么需要存储以及是如何工作的 docker需要存储是因为容器本身是无状态的也就是说容器中的数据在容器停止或删除时会丢失对于一些需要持久化或共享数据的应用来说是不可接收的。例如数据库、配置文件、日志等等。因此容器提供了存储驱动 overlay2、fuse-overlayfs、btrfs、zfs、vfs、devicemapper和挂载方式 volumes、bind mounts、tmpfs mounts来实现容器产生的数据持久化和共享。 3、docker和虚拟机的区别 -Docker容器虚拟机技术原理共享操作系统内核隔离用户空间模拟硬件和操作系统隔离整个操作系统资源占用较少的内存和存储空间较多的内存和存储空间启动速度快速启动较慢的启动硬件资源访问直接访问宿主机的硬件资源通过Hypervisor模拟硬件资源运行环境特定的应用程序或服务可以运行不同的操作系统和应用程序灵活性容易部署和迁移较难部署和迁移安全性低一些较高一些 二、网络 2.1、网络模式 1、host模式 简单的说就是使用宿主机的网络配置。 2、bridge模式 bridge是docker中默认的网络模式此模式会为每一个容器分配Network Namespace、设置ip等并将主机上的容器连接到一个虚拟网桥上。 3、container模式 指定新创建的容器与一个已经存在的容器共享一个Network Namespace而不是与宿主机共享。 4、none模式 在这个模式下docker容器拥有自己的Network Namespace但是并不会为docker容器进行任何网络配置也就是说这个docker容器没有网卡、ip、路由等信息需要手动为docker容器添加网卡、配置ip等。 2.2、网络原理 Docker网络原理主要包括 容器之间通信和容器访问外网。 1、容器之间通信 Docker服务启动后会生成一个docker0网桥每起一个容器docker0网桥会为容器一个可用的ip地址。网桥docker0采用桥接模式并使用veth-pair技术 veth-pair就是一对虚拟网络设备接口成对出现一端连接着协议一端彼此相连正因为这个特性veth-pair充当一个桥梁连接各种虚拟网络设备。这样就使得容器和容器之间是可以相互ping通的。 2、容器访问外网 docker0是虚拟出来的网桥因此是无法被外部网络访问所以需要在运行容器时通过-p参数将容器的端口映射到宿主机的端口上。 实际上docker采用NAT的方式将容器的内部服务端口与宿主机上的某一个端口进行绑定使得宿主机外部可以将网络报文发送到容器。 这里的关键是NAT查看宿主机上的iptables规则 iptables -t nat -S如下图所示 在NAT表中有这么一条规则-A POSTROUTING -s 172.17.0.0/24 ! -o docker0 -j MASQUERAD其含义就是 如果docker0网桥收到来自172.17.0.0/24网段外出包把它交给MASQUERAD处理而MASQUERAD的处理方式就是将包的源地址替换成宿主机上的ip地址发送出去做为一次源地址转换SNAT。 2.3、容器互联 1、同主机不同网段之间的容器互联 正常情况下两个不同网段之间的容器是不能相互ping通的如上图所示网段为172.17的容器与网段为172.29网段的容器不能互相ping通。 # 使用以下命令连通不在同一个网段下的Docker容器将容器加入到需要互通的网络中 docker network connect 网络名称 容器名称使用如下图中所示的命令就可以 2、跨主机之间的容器互联 在 Docker 中每个容器都有自己的网络命名空间这意味着每个容器都拥有自己的IP地址和网络接口。默认情况下Docker使用桥接网络模式将容器连接到一个共享网桥。这种方式适用于在单个主机上运行多个容器的情况。然而在分布式环境中可能需要将容器连接到不同的主机上并进行跨主机通信。 为实现跨主机通信Docker 提供了多种网络连接方式包括 Overlay 网络、MacVLAN 网络和第三方网络插件。这些网络连接方式可以扩展 Docker 的网络功能使容器能够在跨主机环境中相互通信。 1、 docker提供了overlay网络驱动它可以在不同的docker主机之间创建虚拟网络使得容器可以通过ip和端口进行通信。使用overlay网络可以将多个docker主机上的容器连接到一个虚拟网络中并且它们可以像在同一个主机上一样进行通信。使用overlay网络可以在不同主机上创建跨主机的容器连接便于构建分布式引用或跨多个主机进行负载均衡。要使用overlay网络需要在每个docker主机上启用swarm模式并创建一个swarm集群然后创建一个overlay网络并将容器加入到该网络中。 2、通过 直接路由的方式的方式实现跨主机的docker容器通信。 3、除了Docker内置的Overlay网络和 MacVLAN 网络还有许多第三方网络插件可用于实现跨主机通信。这些插件提供了更丰富的网络功能和配置选项。 常见的第三方网络插件包括Calico、Weave、Flannel 、openvswitch等。安装和配置这些网络插件可以参考它们的官方文档。 三、存储 3.1、存储驱动 docker容器使用存储驱动程序来管理容器文件系统和镜像。Docker提供了6种不同的存储驱动程序overlay2、fuse-overlayfs、btrfs、vfs、vfs、devicemapper。 1、overlay2 overlay2驱动是所有当前指的Linux发行版的首选存储驱动程序不需要额外的配置。 2、fuse-overlayfs fuse-overlayfs驱动仅使用于在不支持rootless overlay2的主机上运行rootles docker。在Ubuntu和Debian 10上是支持rootless overlay2的因此不需要使用fuse-overlayfs驱动。在这些系统中overlay2可以直接在rootlesss模式下使用。 3、btrfs and zfs btrfs and vfs存储驱动程序允许高级选项例如创建快照但需要更多的维护和设置。 4、vfs vfs存储驱动程序用于测试目的以及不能使用写时复制文件系统的情况此存储驱动程序性能比较差通常不建议用于生产环境。 5、devicemapper devicemapper驱动使用Linux内核体统的设备映射功能它可以创建逻辑卷来作为容器的文件系统。devicemapper驱动可以提供较高的性能和较强的数据隔离性。 您的操作系统和内核可能不支持每个驱动程序例如aufs仅在ubuntu和debian上受支持并且可能需要安装额外的软件包。而btrfs仅在您的操作系统使用btrfs作为存储才受到支持。 Linux发行版推荐存储驱动程序可选择存储驱动程序Ubuntuoverlay2devicemapper、zfs、vfsDebianoverlay2devicemapper、vfsCentosoverlay2devicemapper、zfs、vfsFedoraoverlay2devicemapper、zfs、vfsSLES 15overlay2devicemapper、vfsRHELoverlay2devicemapper、vfs 总结 1、devicemapper存储驱动程序已弃用并将在以后的版本中删除建议devicemapper存储驱动用户迁移到overlay2。 2、vfs存储驱动仅适用于测试目的生产环境不建议使用。 3、根据您的发行版本你可能有其它存储驱动程序例如btrfs对于这个特定用例可能具有优势但需要额外的设置和人工维护因此不推荐用于常见场景。 对于docker来说后备文件系统是/var/lib/docker所在的文件系统一些存储驱动程序只用于特定的后备文件系统 Storege driverSupported backing filesystemsOverlay2xfs with ftype1ext4fuse-overlayfsany filesystemdevicemapperdirect-lvmbtrfsbtrfszfszfsvfsany filesystem 3.2、挂载方式 docker提供了三种方式将数据从宿主机挂载到docker容器中分别为volumes、bind mounts、tmpfs 1、volumes是在宿主机文件系统的一个路径默认情况下统一的父路径是 /var/lib/docker/volumes/非Docker进程不能修改这个路径下面的文件所以说volumes是容器数据持久存储数据最安全的一种方式。 2、bind mounts可以将文件存储在宿主机文件系统的任何路径 3、tmpfs 只存储在宿主机的内存中不会写入到宿主机文件系统中不会持久化存储。 四、Dockerfile 这里使用二进制mongodb文件来实现如何构建镜像及创建容器这里已经提前下载好了mongodb二进制文件。 [rootlocalhost dockerfile]# ll total 204564 -rw-r--r--. 1 root root 1123 Aug 7 09:49 Dockerfile -rw-r--r--. 1 root root 147 Jul 27 2021 mongodb.conf drwxr-xr-x. 3 root root 91 Jul 27 2021 mongodb-linux-x86_64-rhel70-3.2.221、mongodb.conf文件内容如下所示 vim mongodb.conf dbpath /data/usr/mongodb/data logpath /data/usr/mongodb/logs/mongodb.log port 27017 fork false bind_ip0.0.0.0 auth true maxConns200002、Dockerfile文件内容如下所示 vim Dockerfile FROM centos:7.6.1810 MAINTAINER dongchengjueshenlvm.com RUN yum install nc -y \yum install vim -y \yum install net-tools -y \yum install curl -y RUN mkdir -p /data/usr ADD mongodb-linux-x86_64-rhel70-3.2.22 /data/usr/mongodb RUN mkdir /data/usr/mongodb/{data,logs} ENV PATH /data/usr/mongodb/bin:$PATH EXPOSE 27017 WORKDIR /data/usr/mongodb/bin/ COPY mongodb.conf . CMD /data/usr/mongodb/bin/mongod -f mongodb.conf3、使用docker build构建镜像 docker build -t mongodb:3.2.22 .4、docker-compose文件如下所示 version: 2 services:mongodb:image: mongodb:3.2.22hostname: mongo-singlecontainer_name: mongo-singleports:- 0.0.0.0:17000:27017healthcheck:test: [CMD,nc,-z,localhost,27017]interval: 30stimeout: 10sretries: 3volumes:- /data/basic-data/mongo-single/data/backup:/data/backup- /data/basic-data/mongo-single/data/restore:/data/restore- /data/basic-data/mongo-single/data/config:/data/config- /data/basic-data/mongo-single/data/db:/data/usr/mongodb/data- /data/basic-data/mongo-single/data/logs:/data/usr/mongodb/logstty: truerestart: alwaysnetworks:- default_bridge networks:default_bridge:external: true 如下图所示 五、常用命令 1、仓库相关 docker search $KEY_WORD # 查找镜像 docker pull $REGISTRY:$TAG # 获取镜像 docker push $IMAGE_NAME:$IMAGE_TAG # 推送镜像到仓库需要先登录 docker login $REGISTRY_URL # 登录仓库 docker logout $REGISTRY_URL # 退出仓库 docker info # 显示Docker详细的系统信息可查看仓库地址 docker --help # 显示Docker的帮助信息2、容器相关 docker attach $CONTAINER_ID # 启动一个已存在的docker容器 docker stop $CONTAINER_ID # 停止docker容器 docker start $CONTAINER_ID # 启动docker容器 docker restart $CONTAINER_ID # 重启docker容器 docker kill $CONTAINER_ID # 强制关闭docker容器 docker pause $CONTAINER_ID # 暂停容器 docker unpause $CONTAINER_ID # 恢复暂停的容器 docker rename $CONTAINER_ID # 重新命名docker容器 docker rm $CONTAINER_ID # 删除容器 docker logs $CONTAINER_ID # 查看docker容器运行日志确保正常运行 docker inspect $CONTAINER_ID # 查看container的容器属性比如ip等等 docker port $CONTAINER_ID # 查看container的端口映射 docker top $CONTAINER_ID # 查看容器中正在运行的进程 docker commit $CONTAINER_ID $NEW_IMAGE_NAME:$NEW_IMAGE_TAG # 将容器保存为镜像 docker ps -a # 查看所有容器 docker stats # 查看容器的资源使用情况3、镜像相关 docker images # 查看本地镜像 docker rmi $IMAGE_ID # 删除本地镜像 docker inspect $IMAGE_ID # 查看镜像详情 docker save $IMAGE_ID 文件路径 # 保存镜像为离线文件 docker save -o 文件路径 $IMAGE_ID # 保存镜像为离线文件 docker load 文件路径 # 加载文件为docker镜像 docker load -i 文件路径 # 加载文件为docker镜像 docker tag $IMAGE_ID $NEW_IMAGE_NAME:$NEW_IMAGE_TAG # 修改镜像TAG docker run 参数 $IMAGE_ID $CMD # 运行一个镜像 docker history $IMAGE_ID # 显示镜像每层的变更内容六、防火墙 《Linux运维总结基于Centos系统使用iptables为docker容器配置防火墙策略》 《Linux运维总结基于Centos系统使用firewalld为docker容器配置防火墙策略》 总结整理不易如果对你有帮助可否点赞关注一下 更多详细内容请参考《Linux运维篇Linux系统运维指南》
http://www.dnsts.com.cn/news/142135.html

相关文章:

  • 做ppt的图片素材网站有哪些二维码生成器制作
  • 网站防注入怎么办工艺品商城网站建设
  • 浙江建筑网站计算机科学与技术
  • 福州做网站的wordpress 关于页面
  • 网上能免费做网站发布叼企业网站系统详细设计
  • 什么网站做玩具的外贸南充网站建设费用
  • app免费制作网站哪个好电信外包有必要去吗
  • 做研学的企业网站济南工程建设交易信息网
  • 学校网站制作素材做网络运营需要掌握什么
  • 如何制作公司网站免费wordpress做ftp
  • 网站续费后为何还不能用广东网站开发搭建
  • 正规网站建设方案详细WordPress网站接入公众号
  • 搜题网站怎么制作房地产市场调研报告
  • 医疗网站建站需求推动政务网站建设
  • 网站建设与管理常用需要一个网站
  • 淮南家居网站建设怎么样wordpress调用当前分类名
  • 个人网站模板flash管理系统软件有哪些
  • 网站建设的领军 18年网站建设网站开发 聊天窗口
  • 怎么买速成网站开淘宝店要自己做网站吗
  • 东莞网站关键词优化排名高端网名
  • 城乡建设官方网站免费软文推广平台都有哪些
  • 会展网站模板凡客诚品和凡客
  • 好网站建设公司有多少网站开发群
  • 火车票网站建设yp77731域名查询
  • 吉林市建设工程档案馆网站哪家网站设计比较好
  • 网站自建织梦cms下载
  • 一般网站建设都用什么字体jsp网站开发实现增删改查
  • dedecms怎么把一个网站的文章导出导到另一个站里品质好
  • 展示型网站有哪些内容优购物官方网站app
  • Linux哪个版本做网站好怎么才可以做网站