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

浙江网络公司网站建设广州自助网站搭建建站公司

浙江网络公司网站建设,广州自助网站搭建建站公司,邹城建网站,公司想做一个网站目录 Docker 容器的基本概念与操作1.使用“docker create”创建容器。这里基于Nginx的镜像创建了一个容器#xff0c;名字为mycontainer。2.使用“docker ps -a”命令查看所有的容器#xff0c;这时的容器不一定是运行状态。3.使用 “docker start” 命令可以启动容器。4.使用… 目录 Docker 容器的基本概念与操作1.使用“docker create”创建容器。这里基于Nginx的镜像创建了一个容器名字为mycontainer。2.使用“docker ps -a”命令查看所有的容器这时的容器不一定是运行状态。3.使用 “docker start” 命令可以启动容器。4.使用 “docker run” 命令可以直接创建容器并启动容器。5.使用 “docker exec” 命令可以进入容器内。6.使用 “docker stop” 命令可以停止容器。7.使用 “docker rm” 命令可以删除容器。当容器正在运行时是不能直接将其删除的。但可以使用 -f 参数进行强行删除。8.使用 “docker export” 命令导出一个已经创建的容器不管容器处于什么状态。通过这种方式剋实现容器的迁移。9.使用 “docker import” 命令可以将从容器导出生成的文件重新导入容器。10.使用 mynginx_imported 镜像来创建一个容器。这里需要注意的是如果要使用导入的镜像创建并启动容器则需要在启动时跟上具体的命令否则就会出现错误。 Docker 的日志访问Docker引擎日志访问Docker应用日志1.查看指定时间后的日志只显示最后5行。2.查看容器最近30分钟的日志。 管理容器的资源什么是 Linux CGroup1.确定操作系统的发行版本。2.根据操作系统的发行版本可以确定是否启用了 Linux CGroup。 Docker 对内存的使用1.创建一个Dockerfile 文件输入以下内容。2.执行 “docker build” 命令将其编译成镜像镜像的名称是mycentos。3.以下语句使用了 mycentos 来进行测试。4.使用 “docker stats” 命令观察容器占用的内存会发现容器占用的内存被限定在256MB。 Docker 对 I/O 宽带的使用1.执行以下命令可以获取这些参数机器含义。2.Docker I/O 管理相关参数。3.下面通过两个示例来演示如何在启动了的 Docker 容器中使用上面的参数来对容器使用的 I/O 带宽进行限定示例一1.使用 --device-read-bps 和 --device-write-bps 参数限定容器的读写速率。2.在容器中执行以下命令。其中oflagdirect 表示读写数据采用直接 I/O 方式。3.在宿主机上使用 iotop 命令观察容器的写入速度会发现容器的写入速度被限定在1035kb/s即 1 MB/s 左右。4.以下语句将限制容器的读取速度为 1MB/s。 示例二 使用 --device-read-iops 和 --device-write-iops 参数限定容器的读写次数。1.为了观察结果先在宿主机上安装 sysstat 软件包。2.创建并启动容器通过使用 --device-write-iops 参数将容器写数据的速率设定为每秒5次。3.在容器中执行以下命令其中oflagdirect 表示读写数据采用直接 I/O 方式。4.在宿主机上使用以下命令观察输出结果这个命令每个1秒刷新1次。5.以下语句会将容器读取数据的速率设定为每秒5次 管理Docker容器中的数据在 Docker 容器中实现数据管理的两种方式1.数据卷Data Volumes2.数据卷容器Data Volume Containers 使用数据卷管理 Docker 容器中的数据1.创建一个名为 “myvolume” 的数据卷。2.查看所有的数据卷。3.使用 “docker inspect volume” 命令查看数据卷的详细信息。4.启动一个容器并使用 myvolume 数据卷。这里使用 Nginx 镜像创建一个容器并将容器的 80 端口映射到宿主机的 1234 端口容器名称为 “mynginx”5.切换到 “/var/lib/docker/volumes/myvolume/_data” 目录下并修改 Nginx的首页 index.html 文件的内容6.通过浏览器访问宿主机的 1234 端口打开Nginx的主页会看到显示的就是新修改的Nginx主页。7.在挂载数据卷时也可以使用 -v 参数。以下命令是将宿主机的 /root 目录挂载到了容器内的 “/root/container/mydatavolume” 目录下。下图表示挂载成功了。 Docker 容器的基本概念与操作 Docker 的容器类似操作系统的文件夹其中包含应用喝应用运行时所需要的依赖环境。每一个Docker 容器都是从 Docker 镜像创建的。 Docker 容器的操作包括创建容器、停止容器、进入容器、删除容器、导入和导出容器、查看容器等。 1.使用“docker create”创建容器。这里基于Nginx的镜像创建了一个容器名字为mycontainer。 sudo docker create --name mycontainer nginx2.使用“docker ps -a”命令查看所有的容器这时的容器不一定是运行状态。 # 查看所有容器 sudo docker ps -a # 查看所有运行中的容器 sudo docker ps3.使用 “docker start” 命令可以启动容器。 sudo docker start [CONTAINER ID]4.使用 “docker run” 命令可以直接创建容器并启动容器。 sudo docker run -d --name mycontainer1 nginx5.使用 “docker exec” 命令可以进入容器内。 sudo docker exec -it [CONTAINER ID]/[CONTAINER NAMES] /bin/bash # 其中的参数说明 # -t :为Docker 分配一个伪终端 # -i :为Docker 打开标准输入6.使用 “docker stop” 命令可以停止容器。 sudo docker stop [CONTAINER ID]/[CONTAINER NAMES]7.使用 “docker rm” 命令可以删除容器。当容器正在运行时是不能直接将其删除的。但可以使用 -f 参数进行强行删除。 sudo docker rm [CONTAINER ID]/[CONTAINER NAMES]8.使用 “docker export” 命令导出一个已经创建的容器不管容器处于什么状态。通过这种方式剋实现容器的迁移。 sudo docker export -o name.tar [CONTAINER ID]9.使用 “docker import” 命令可以将从容器导出生成的文件重新导入容器。 sudo docker import nginx.tar mynginx_imported # 这里mynginx_imported是一个镜像10.使用 mynginx_imported 镜像来创建一个容器。这里需要注意的是如果要使用导入的镜像创建并启动容器则需要在启动时跟上具体的命令否则就会出现错误。 # 错误写法 sudo docker run -d mynginx_imported # 正确写法 sudo docker run -d mynginx_imported /bin/bash # 其中/bin/bash表示在启动容器时需要在容器中执行的指令。Docker 的日志 在 Docker 的整个生命周期中超过70%的时间我们都是在做 Docker 的运维工作。查看 Docker 日志是运维工作中非常重要的一个环节。 Docker 日志分为两种类型Docker 引擎的日志、应用的日志。下面分别对这两种日志进行介绍。 访问Docker引擎日志 Docker 引擎的日志是指在 Docker 守护进程执行过程中产生的日志信息。如果 Docker 引擎出现了问题则需要在不同的操作系统的宿主机上使用不同的方式进行查看。 操作系统日志位置Ubuntu 22.04journalctl -u docker.service 访问Docker应用日志 Docker 将应用运行在容器中应用输出日志也就输出到容器中了访问Docker 应哟个的日志也就变成访问 Docker 容器的日志。要访问容器的日志首先需要了解 Docker 的日志引擎。以下是 Docker 支持的日志引擎。 日志引擎说明journaldDocker 默认的日志引擎。这种引擎把所有容器的回显日志输出到系统的journald中json-file把每个容器的回显日志以JSON 文件格式输出到每个容器的内部。如果在实际应用中某些应用产生了大量的日志信息则可能导致容器的 JSON 日志文件过大而占满宿主机的磁盘syslog把所有容器的回显日志输出到系统的 syslog 服务中fluentd把所有容器的回显日志输出到系统的 fluentd 服务中gelf把所有容器的日志输出到支持 GELF 格式的服务中如 Logstashnone关闭 Docker 容器的日志。使用这种方式 则意味着无法通过 “docker logs” 命令查看任何容器输出的日志 利用以下命令查看 Docker 默认的日志引擎 sudo docker info | grep Logging并不推荐直接读取 Docker 日志内容原因是 Docker 提供了 “docker logs” 命令来帮助我们读取日志信息。 以下图片内容由另一台服务器提供仅供示例参考 1.查看指定时间后的日志只显示最后5行。 docker logs -f -t --since2024-01-01 --tail5 [CONTAINER ID]2.查看容器最近30分钟的日志。 docker logs --since 30m [CONTAINER ID]管理容器的资源 在一台 Docker 宿主机上可以同时启动多个容器。在默认情况Docker 没有限制其中运行的容器使用硬件资源。而在实际环境中容器的负载过高会占用宿主机的大量资源。这里的资源是指宿主机的 CPU、内存和 I/O 宽带这三个方面。 本节内容介绍如何使用 Docker 的资源管理给容器的资源使用设置一个阀值以控制容器对宿主机 CPU、内存和 I/O 贷款的使用。 什么是 Linux CGroup 由于 Docker 构建在Linux 的基础上因此从 Linux 底层来看Docker 是利用 Linux Control Group简称Linux CGroup来实现对资源使用的控制。因此要掌握 Docker 容器的资源管理有必要先了解一下什么是 Linux CGroup。 Linux CGroup 是 Linux 中的一些进程通过这些进程可以限制应用对资源的使用。并且通过 Linux CGroup 可以对系统资源做精细化控制。 Linux CGroup 主要提供一下功能。 Resource limitation限制资源的使用例如使用 CPU 及内存的上线。 Prioritization应用优先级控制例如控制任务进度。 Accounting应用的审计和统计例如实现应用的计费。 Control实现对应用的控制例如应用的挂起、恢复和执行等。 要使用 Linux CGroup则需要先通过执行以下步骤确定Linux 内核是否启用了 Linux CGroup。 1.确定操作系统的发行版本。 2.根据操作系统的发行版本可以确定是否启用了 Linux CGroup。 cat /boot/config-5.15.0-92-generic | grep CGROUP # 其中CGROUP的参数值是 “y”表示已经启动 Linux CGroupDocker 对内存的使用 利用底层的 Linux CGroup能够很方便地通过参数 -m 来设定容器所使用的内存 默认情况下一个容器可以使用主机上的所有内存。 在使用 -m 参数时可以指定具体的参数值的后缀如 K、M 或者 G。 下面通过具体的步骤来演示。这里基于CentOS的基础镜像安装压力测试工具 stress 来进行测试。 1.创建一个Dockerfile 文件输入以下内容。 FROM centos:7 RUN yum install -y epel-release yum install -y stress ENTRYPOINT [stress]2.执行 “docker build” 命令将其编译成镜像镜像的名称是mycentos。 sudo docker build -t mycentos .3.以下语句使用了 mycentos 来进行测试。 sudo docker run -it --rm -m 256m mycentos --vm 1 --vm-bytes 128M --vm-hang 0 # 其中参数说明如下 # -m 256m限制容器使用内存的大小。 # --vm-bytes 128M压力测试工具stress每次分配大小为128M的内存空间。 # --vm-hang 0压力测试工具stress 分配完内存后立即释放分配的内存如果该值为100则表示分配内存后等待100秒后再释放分配的内存。4.使用 “docker stats” 命令观察容器占用的内存会发现容器占用的内存被限定在256MB。 Docker 对 I/O 宽带的使用 要在 Docker 中对容器使用 I/O 带宽进行限定则需要先了解 Docker I/O 管理相关的参数。 1.执行以下命令可以获取这些参数机器含义。 sudo docker help run | grep -E bps|IO2.Docker I/O 管理相关参数。 参数名称说明–blkio-weight可以通过–blkio-weight修改容器 blkio 的权重权重值为10~1000–blkio-weight-device指定某个设备的权重–device-read-bps按每秒读取设备的数据量设定上限–device-read-iops按照每秒读操作的次数设定上限–device-write-bps按每秒写入块设备的数据量设定上限–device-write-iops按照每秒写操作次数设定上限 3.下面通过两个示例来演示如何在启动了的 Docker 容器中使用上面的参数来对容器使用的 I/O 带宽进行限定 示例一 1.使用 --device-read-bps 和 --device-write-bps 参数限定容器的读写速率。 sudo docker run -it --rm --device-write-bps /dev/sda:1mb centos /bin/bash2.在容器中执行以下命令。其中oflagdirect 表示读写数据采用直接 I/O 方式。 dd if/dev/zero oftest.out bs1M count200 oflagdirect3.在宿主机上使用 iotop 命令观察容器的写入速度会发现容器的写入速度被限定在1035kb/s即 1 MB/s 左右。 4.以下语句将限制容器的读取速度为 1MB/s。 sudo docker run -it --rm --device-read-bps /dev/sda:1mb centos /bin/bash示例二 使用 --device-read-iops 和 --device-write-iops 参数限定容器的读写次数。 参数 --device-read-iops 和 --device-write-iops 的格式如下其中limit必须是正整数。 --device-read-iops device-path:limit --device-write-iops device-path:limit以下是操作步骤。 1.为了观察结果先在宿主机上安装 sysstat 软件包。 sudo apt-get install sysstat2.创建并启动容器通过使用 --device-write-iops 参数将容器写数据的速率设定为每秒5次。 sudo docker run -it --rm --device-write-iops /dev/sda:5 centos /bin/bash3.在容器中执行以下命令其中oflagdirect 表示读写数据采用直接 I/O 方式。 dd if/dev/zero oftest.out bs1M count200 oflagdirect4.在宿主机上使用以下命令观察输出结果这个命令每个1秒刷新1次。 iostat 15.以下语句会将容器读取数据的速率设定为每秒5次 sudo docker run -it --rm --device-read-iops /dev/sda:5 centos /bin/bash管理Docker容器中的数据 在生产环境中使用 Docker一方面需要对数据进行保存或者在多个容器之间进行数据共享另一方面在 Docker 的容器被删除后并不会涉及容器的数据管理。。 那么如何现实信息的持久化呢这必然涉及容器的数据管理。 在 Docker 容器中实现数据管理的两种方式 1.数据卷Data Volumes 数据卷本质上是一个挂载目录类似使用 Linux 的 mount 命令挂载的目录。数据卷可以供容器使用并且可以在不同的容器之间共享和重用数据卷。对数据卷的修改会立即生效。数据卷与容器彼此独立对数据卷的更新不会影响镜像 即使容器被删除容器卷默认也会一直存在直到数据卷被删除为止。 在 Docker 中可以使用 -mount 和 -v 两种方式给容器挂载数据卷。 2.数据卷容器Data Volume Containers 数据卷容器是一种特殊的容器用来维护数据卷。它可以在多个容器之间共享数据信息。利用数据卷容器可以很方便的完成数据迁移。 使用数据卷管理 Docker 容器中的数据 下面通过具体实战来演示。 1.创建一个名为 “myvolume” 的数据卷。 sudo docker volume create myvolume2.查看所有的数据卷。 sudo docker volume ls3.使用 “docker inspect volume” 命令查看数据卷的详细信息。 sudo docker inspect myvolume4.启动一个容器并使用 myvolume 数据卷。这里使用 Nginx 镜像创建一个容器并将容器的 80 端口映射到宿主机的 1234 端口容器名称为 “mynginx” sudo docker run -d -p 1234:80 --name mynginx --mount typevolume,sourcemyvolume,target/usr/share/nginx/html/ nginx其中的参数说明如下 –mount指定在容器启动时挂载数据卷 type指定数据卷挂载的方式它有三个值看下表。 type的取值说明volume普通数据卷这是默认的type类型。其函数映射到主机 “、var/lib/docker/volumes” 目录下bind绑定数据卷。使用这种类型可以在挂载数据卷时将其映射到主机的指定目录下tmpfs临时数据卷只将容器的目录挂载到宿主机的内存中。一般在实际环境中不会使用这种方式 source指定宿主机上的目录或者数据卷。这里使用在第一步所创建的数据卷myvolume target将容器中的 “/usr/share/nginx/html/” 目录挂载到主机 通过宿主机的 “/var/lib/docker/volumes/myvolume/_data” 目录可以访问容器内部的 “/usr/share/nginx/html/” 目录。 5.切换到 “/var/lib/docker/volumes/myvolume/_data” 目录下并修改 Nginx的首页 index.html 文件的内容 cd /var/lib/docker/volumes/myvolume/_data echo h1New Nginx Home Page/h1 index.html6.通过浏览器访问宿主机的 1234 端口打开Nginx的主页会看到显示的就是新修改的Nginx主页。 7.在挂载数据卷时也可以使用 -v 参数。以下命令是将宿主机的 “/root” 目录挂载到了容器内的 “/root/container/mydatavolume” 目录下。下图表示挂载成功了。 sudo docker run -it -v /root:/root/container/mydatavolume centos bash需要说明的是使用这样的方式挂载的数据卷默认的权限是“读写”rw用户也可以通过 ro 将其指定为 “只读” 。 sudo docker run -it -v /root:/root/container/mydatavolume:ro centos bash使用数据卷容器管理 Docker 容器中的数据暂时不写了。有需要的可以留言。
http://www.hkea.cn/news/14348112/

相关文章:

  • 很长的网站域名怎么做短wordpress主题cms
  • ins做甜品网站上海做网站那家公司好
  • 建设证件查询官方网站上海企业信息登记号查询
  • 做排名出租网站企业官方网站开发平台
  • mil后缀网站被邀请做刷客会不会碰到钓鱼网站
  • 怎么做招聘网站设计人脉做的最好的网站
  • 程序员就是做网站的吗长沙关键词优化新报价
  • 潍坊百度网站建设wordpress技术
  • 百度竞价找谁做网站做网站必须知道的问题
  • 自考在线做试卷的网站2022最新热点事件及点评
  • 上海永灿网站建设湛江网站制作系统
  • 网站设计细节北京aso优化
  • 安徽网站优化中国最近的好消息
  • 哪个网站教做ppt公众号开发实践 pdf
  • 做电影网站会被捉吗网站上做旅游卖家要学什么软件
  • 有哪些做壁纸的网站学校html网站模板
  • 株洲网站建设工作室东营百度推广电话
  • 网站建设合同注意点株洲网站制作
  • 盛成广告传媒做网站的网站定制开发 广州
  • 凡科轻站在网站后台设置wap模板目录
  • 网站拍照的幕布周口网站制作公司哪家好
  • 网站建设补贴是经信局的政策吗wordpress+爱情主题公园
  • 常州网站开发公司推荐wordpress 创建文章
  • 校园网站建设资源wordpress本地做好如何改站点地址
  • 网站备案 更换接入商晋中建设网站
  • 2小时wordpress建站wordpress 云备份
  • 工业软件开发技术优化设计五年级下册语文答案2021
  • 网站建设的过程有哪些购物网站首页界面设计
  • 网站网络营销方案安徽网站建设有限公司
  • 城乡建设部注册建筑师网站博山区住房和城乡建设局网站