南京个人网站建设企业在线咨询服务系统

web/2025/9/28 20:00:00/文章来源:
南京个人网站建设,企业在线咨询服务系统,专业做网站的公司 郑州,沁阳企业自助建站文章目录 Docker简介什么是容器命名空间#xff1a; Docker 的优缺点 Docker安装Docker镜像管理什么是镜像镜像管理 Docker容器管理运行容器容器启动、停止、重启拷贝文件进入容器容器与应用 DockerfileDockerfile 语法案例 总结 Docker简介 什么是容器 容器是用来装东西的 Docker 的优缺点 Docker安装Docker镜像管理什么是镜像镜像管理 Docker容器管理运行容器容器启动、停止、重启拷贝文件进入容器容器与应用 DockerfileDockerfile 语法案例 总结 Docker简介 什么是容器 容器是用来装东西的Linux 里面的容器是用来装应用的 容器就是将软件打包成标准化单元以用于开发、交付和部署 容器技术已经成为应用程序封装和交付的核心技术 容器原理容器技术的核心由以下几个内核技术组成 Cgroups (Control Groups) 资源管理SELinux安全 (是针对于文件系统文件的管理措施)NameSpace命名空间 命名空间 是指可以对系统资源空间进行分割隔离的技术例如创建一个虚拟机在虚拟机里的所有操作都不会对真实机造成影响。命名空间分为六大类可以从各个方面来对系统资源空间进行隔离 UTS主机名隔离NETWORK网络隔离MOUNT文件系统隔离USER用户隔离PID进程隔离IPC信号向量隔离 Docker 的优缺点 优点 相比于传统的虚拟化技术容器更加简洁高效传统虚拟机需要给每个 VM 安装操作系统容器使用的共享公共库和程序 缺点 容器的隔离性没有虚拟机强共用Linux内核安全性有先天缺陷 Docker 使用模板机的克隆以下机器配置如下 主机名IP地址内存CPUdocker-0001192.168.8.1072G2docker-0002192.168.8.1082G2 docker-0001配置IP地址和主机名 [rootlocalhost ~]# hostnamectl set-hostname docker-0001 [rootdocker-0001 ~]# nmcli connection modify ens33 ipv4.method auto connection.autoconnect yes [rootdocker-0001 ~]# nmcli connection up ens33 [rootdocker-0002 ~]# yum clean all [rootdocker-0002 ~]# yum repolistdocker-0002配置IP地址和主机名 [rootlocalhost ~]# hostnamectl set-hostname docker-0002 [rootdocker-0002 ~]# nmcli connection modify ens33 ipv4.method auto connection.autoconnect yes [rootdocker-0002 ~]# nmcli connection up ens33 [rootdocker-0002 ~]# yum clean all [rootdocker-0002 ~]# yum repolistDocker安装 docker安装两台主机都要安装以docker-0001为例 开启路由转发docker是通过虚拟交换机来进行通讯的需要开启路由转发的功能 [rootdocker-0001 ~]# echo net.ipv4.ip_forward 1 /etc/sysctl.conf [rootdocker-0001 ~]# sysctl -p #sysctl -p 让配置立刻生效否则需要重启虚拟机 [rootdocker-0001 ~]# yum -y install docker [rootdocker-0001 ~]# systemctl enable --now docker #启动docker服务Docker镜像管理 什么是镜像 镜像是启动容器的核心 在Docker 中容器是基于镜像启动的 镜像采用分层设计使用 COW 技术 容器本身是没有操作系统和宿主机共用一个操作系统 容器是docker(容器的管理工具)使用镜像文件来启动的 镜像是启动容器的模板镜像中存放的是应用程序(服务软件)例如: 有一个http的镜像文件在这个镜像中就存放的是http的所有文件和变量 用户使用镜像启动容器时会生成一个独立于镜像的容器层并不会对镜像层产生任何影响 而且容器采用了cow(写时复制)的技术用户可以使用一个镜像文件创建多个容器互不干扰 镜像采用分层技术 用户可以根据自己的需求来制作镜像例如:在镜像的第一层定义应用程序的变量在镜像的第二层修改配置文件在镜像的第三层进行应用软件的部署分层做好镜像后用户使用镜像启动容器时,可以选择根据镜像的哪一层来启动类似快照还原 镜像来源 镜像可以从官方镜像仓库下载https://hub.docker.com自己制作 镜像管理 docker images #查看本机镜像docker search 关键词 #查找包含关键词的镜像docker pull 镜像名称:标签 #下载镜像docker rmi 镜像名称:标签 #删除镜像docker history 镜像名称: 镜像标签 #查看镜像的制作历史docker inspect 镜像名称: 镜像标签 #查看镜像的信息docker tag 镜像名称: 镜像标签 新镜像名称: 新的标签 #为镜像的打新名称和标签 [rootdocker-0001 ~]# docker images #还没有导入镜像所以没有镜像[rootdocker-0001 ~]# docker search busybox NAME DESCRIPTION STARS OFFICIAL AUTOMATED busybox Busybox base image. 2010 [OK] [rootdocker-0001 ~]# docker pull busybox查看镜像 [rootdocker-0001 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE busybox latest 6858809bf669 4 weeks ago 1.232 MB #REPOSITORY 镜像名称 #TAG 镜像标签 #IMAGE ID 镜像ID号 #CREATED 镜像创建时间 #SIZE 镜像大小镜像的备份与恢复 镜像备份docker save 镜像名称:镜像标签 -o 备份文件夹(tar格式)镜像恢复(导入镜像)docker load -i 备份文件名称 docker-0001导出镜像备份 [rootdocker-0001 ~]# docker save busybox:latest -o /root/busybox.tar #导出镜像busybox,需要指定名字和标签导出到/root目录下名称为busybox.tar #名称和路径可以随意指定拷贝备份镜像到docker-0002上 [rootdocker-0001 ~]# scp /root/busybox.tar 192.168.8.108:/root/docker-0002恢复镜像 [rootdocker-0002 ~]# docker load -i busybox.tar [rootdocker-0002 ~]# docker images 教学环境中将docker-images目录上传到docker-0001的/root下并导入这四个镜像到docker里面 [rootdocker-0001 ~]# cd docker-images [rootdocker-0001 docker-images]# for i in *.tar.gzdodocker load -i $idonedocker-0001看镜像的制作历史 [rootdocker-0001 ~]# docker history centos:latest #由下到上镜像可以分为3层 查看镜像的信息 [rootdocker-0001 ~]# docker inspect centos:latest [rootdocker-0001 ~]# docker inspect nginx:latest ..........Cmd: [ # Cmd 默认的启动命令即启动容器时默认的启动命令nginx,-g,daemon off;], ..........docker-0001为镜像busybox:lastest打的新名称和标签 [rootdocker-0001 ~]# docker tag busybox:latest xxhh:testdocker-0001删除镜像 [rootdocker-0002 ~]# docker rmi busybox:latestDocker容器管理 运行容器 docker run -参数 镜像名称:镜像标签 启动命令 #创建运行进入容器命令docker ps [-a] [-q] #查看容器docker rm [-f] #删除容器-f强制 docker-0001根据centos镜像启动并进入一个容器 [rootdocker-0001 ~]# docker run -it centos:latest /bin/bash #/bin/bash为容器内的命令,容器内存在才可以使用 [root89d1ec3a0dc8 /]# exit [rootdocker-0001 ~]# docker run -itd nginx:latest #启动nginx是个服务要加d放后台才能运行查看容器 [rootdocker-0001 ~]# docker ps [rootdocker-0001 ~]# docker ps -a #ps -a 查看创建的所有的容器(运行的和已经停止的) [rootdocker-0001 ~]# docker ps -q #ps -q 查看运行中容器的ID值 [rootdocker-0001 ~]# docker ps -aq #ps -aq查看所有容器的id,用于脚本对容器的管理删除容器容器ID不能照抄每个人都不一样 [rootdocker-0001 ~]# docker rm 512567e6f64f删除正在使用的容器时会报错无法删除需要先停止容器再执行删除命令 [rootdocker-0001 ~]# docker stop 512567e6f64f #停止容器 [rootdocker-0001 ~]# docker rm 512567e6f64f删除所有的容器支持命令行重录前一个命令的结果$(docker ps -aq)可以作为后一个命令的参数 [rootdocker-0001 ~]# docker rm -f $(docker ps -aq) #$()用来获取命令的执行结果容器启动、停止、重启 docker start 容器id #启动容器docker stop 容器id #停止容器docker restart 容器id #重启容器 [rootdocker-0001 ~]# docker run -itd nginx:latest 查看容器信息 [rootdocker-0001 ~]# docker inspect 38b8ee2a8754 ......Gateway: 172.17.0.1,IPAddress: 172.17.0.2, ...... [rootdocker-0001 ~]# curl http://172.17.0.2 titleWelcome to nginx!/title ............ [rootdocker-0001 ~]# docker stop 38b8ee2a8754 #停止容器 [rootdocker-0001 ~]# docker start 38b8ee2a8754 #启动容器 [rootdocker-0001 ~]# docker restart 38b8ee2a8754 #重启容器拷贝文件 docker cp 本机文件路径 容器id:容器内路径上传 docker cp 容器id:容器内路径 本机文件路径下载 在第一个终端中执行 [rootdocker-0001 ~]# docker run -it centos:latest [root69f7753eb1e8 /]# cd /etc/yum.repos.d/ [root69f7753eb1e8 yum.repos.d]# rm -rf *#另外开一个docker-0001的终端操作 [rootdocker-0001 ~]# docker cp /etc/yum.repos.d/CentOS-Base.repo 69f7753eb1e8:/etc/yum.repos.d/Centos-base.repo [root69f7753eb1e8 yum.repos.d]# yum -y install net-tools #在容器里面可以正常使用 [root69f7753eb1e8 yum.repos.d]# ifconfig [root69f7753eb1e8 yum.repos.d]# exit进入容器 docker exec -it 容器id 命令 docker attach 容器id [rootdocker-0001 ~]# docker ps -a #查看正在使用的容器 [rootdocker-0001 ~]# docker start 69f7753eb1e8 #启动centos的容器 [rootdocker-0001 ~]# docker exec -it 69f7753eb1e8 /bin/bash #根据centos容器ID进入容器 [root69f7753eb1e8 /]# ps -ef #两个bash进程 [root69f7753eb1e8 /]# exit #退出attach 以上帝进程的身份进入容器内部当执行exit退出容器时会结束整个容器通常用于在测试时查看报错信息 [rootdocker-0001 ~]# docker attach 69f7753eb1e8 #Ctrl p q 退出容器但不会停止 [root69f7753eb1e8 /]# ps -ef #一个bash进程上帝进程 [root69f7753eb1e8 /]# exit #退出容器关闭[rootdocker-0001 ~]# docker start 69f7753eb1e8 #启动被关闭容器 [rootdocker-0001 ~]# docker attach 69f7753eb1e8 #Ctrl p q 退出容器但不会停止容器的运行 在对容器的使用过程中都是使用exec新开一个进程的方式进入容器进行操作而attach 往往应用于调试终端输出的情况 容器与应用 删除之前所有的容器 [rootdocker-0001 ~]# docker rm -f $(docker ps -aq)重新运行容器 [rootdocker-0001 ~]# docker run -it --name myapache centos:latest [rootd7cfa9370097 /]# cd /etc/yum.repos.d/ [rootd7cfa9370097 yum.repos.d]# rm -rf *把宿主机的yum文件拷贝给刚刚启动的容器 [rootdocker-0001 ~]# docker cp /etc/yum.repos.d/CentOS-Base.repo myapache:/etc/yum.repos.d/CentOS-Base.repo此时就可以在容器里面安装相关的软件包 [rootd7cfa9370097 yum.repos.d]# yum -y install httpd php psmisc iproute net-tools [rootd7cfa9370097 yum.repos.d]# pstree -p因为容器内并没有systemd的服务无法使用systemctl来启动httpd的服务 查看httpd的服务文件获取环境变量文件和服务启动命令 [rootd7cfa9370097 /]# cat /lib/systemd/system/httpd.service ........ [Service] EnvironmentFile/etc/sysconfig/httpd #环境变量文件 ExecStart/usr/sbin/httpd $OPTIONS -DFOREGROUND#启动命令$OPTIONS 此环境变量为空可以不用写[rootd7cfa9370097 /]# cat /etc/sysconfig/httpd #从环境变量文件中获取环境变量 ...... LANGC [rootd7cfa9370097 html]# echo hello world /var/www/html/index.html [rootdcfa9370097 /]# /usr/sbin/httpd -DFOREGROUND #启动httpd服务 AH00558: httpd: Could not reliably determine the servers fully qualified domain name, using 172.17.0.2. Set the ServerName directive globally to suppress this message可以在宿主机测试通过提示的地址172.17.0.2IP地址不要照抄 [rootdocker-0001 ~]# curl 172.17.0.2 hello world此时容器内容的终端是被占用的是在前台运行的如果关闭不能够再次访问httpd 若想要退出使用ctrl pq [rootdocker-0001 ~]# docker exec -it d7cfa9370097 /bin/bash [rootd7cfa9370097 /]# pstree -p bash(1)---httpd(66)--httpd(67)|-httpd(68)|-httpd(69)|-httpd(70)-httpd(71) [rootd7cfa9370097 /]# exitDockerfile Dockerfile是用于构建Docker镜像的文本文件。它包含一组指令用于描述镜像的基础操作以及打包应用程序运行所需的所有依赖项。 Dockerfile 语法 FROM基础镜像RUN制作镜像时执行的命令可以有多个ADD复制文件到镜像自动解压 (文件类型为: tar.gz 或 tar.bz2)COPY复制文件到镜像不解压MAINTAINER镜像创建者信息EXPOSE开放的端口ENV设置变量WORKDIR定义容器默认工作目录(等于cd)CMD: 容器启动时执行的命令仅可以有一条CMD若多条会覆盖最后一条生效 CMD 容器的默认启动命令可以自己定义也可以使用默认的Dockerfile中不指定CMD时则使用默认的启动命令如果没有使用CMD指定启动命令则会继承上一个镜像的默认启动命令CMD 容器的默认启动命令有且只能有一条 使用 Dockerfile 工作流程 mkdir buildcd build编写 Dockerfile根据Dockerfile生成新的镜像docker build -t imagename Dockerfile所在目录 案例 创建支持httpd服务镜像 因为容器内并没有systemd的服务无法使用systemctl来启动httpd的服务 查看httpd的服务文件获取环境变量文件和服务启动命令 [roota670096c60ad /]# cat /lib/systemd/system/httpd.service ........ [Service] EnvironmentFile/etc/sysconfig/httpd #环境变量文件 ExecStart/usr/sbin/httpd $OPTIONS -DFOREGROUND #启动命令$OPTIONS此环境变量为空 [roota670096c60ad /]# vim /etc/sysconfig/httpd #从环境变量文件中获取环境变量 ...... LANGC [roota670096c60ad /]# LANGC #设置环境变量 [root54cb8bfa063d /]# /usr/sbin/httpd -DFOREGROUND #启动httpd服务Ctrl C 退出编写httpd的Dockerfile文件从这里开始做 [rootdocker-0001 ~]# mkdir web [rootdocker-0001 ~]# cd web/ [rootdocker-0001 web]# vim Dockerfile FROM docker.io/centos:latest RUN yum -y install httpd php ENV LANGC EXPOSE 80 WORKDIR /var/www/html COPY index.html /var/www/html/ CMD [/usr/sbin/httpd,-DFOREGROUND]生成index.html [rootdocker-0001 web]# echo 123 index.htmlbuild 创建新的镜像-t 指定新镜像的名字和标签. 指定Dockerfile文件所在的目录 [rootdocker-0001 web]# docker build -t myos:httpd .[rootdocker-0001 web]# docker images [rootdocker-0001 web]# docker run -itd myos:httpd #后台启动容器因为是一个服务 [rootdocker-0001 web]# docker ps #查看正在使用的容器 [rootdocker-0001 web]# docker inspect 800b21aa9736 #查看容器的详细信息 [rootdocker-0001 web]# curl http://172.17.0.2/ #IP地址不要抄总结 掌握Docker容器管理平台掌握镜像和容器的关系掌握镜像管理命令掌握容器管理命令掌握Dockerfile语法格式

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/83502.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何百度搜到网站数据分析网站html模板下载

很难想象主站居然还有这漏洞 某天的一个晚上,默默的打开了电脑,娴熟的打开了Burp suite, 看到一个很熟悉的注册登录页面,开始测试。 很难想象,还有验证码时效性,于是怼了半刻钟,终于让我逮到了他的数据包…

网站建设和美工良品铺子网站规划和建设

(一) QString 1 QString的简介 QString 是Qt 中的一个类,用于存储字符串,QString 没有父类。QString 存储的是一串字符,每个字符是一个 QChar 类型的数据。QChar 使用的是 UTF-16 编码,一个字符包含 2字节数据。 对于超过 6553…

vue网站开发实例免费申请网站永久

bitmap的原理bitmap就是通过最小的单位bit(8bit 1b 0.001kb)来进行0或者1的设置,表示某个元素对应的值或者状态。一个bit的值,或者是0,或者是1;也就是说一个bit能存储的最多信息是2。优点基于最小的单位bit进行存储,…

金华市网站建设最低价预约支付wordpress

目录 一、准备工作 二、常用配置 三、尝试 四、增删改查 1、增加 2、删除 3、修改 4、查询 五、XML的映射方法 一、准备工作 实施前的准备工作: 准备数据库表 创建一个新的springboot工程,选择引入对应的起步依赖(mybatis、mysql驱动…

让别人做网站需要注意什么wordpress网站加密

图像的颜色及Halcon颜色空间转换 文章目录 图像的颜色及Halcon颜色空间转换一. 图像的色彩空间1. RGB颜色 2. 灰度图像3. HSV/ HSI二. Bayer 图像三. 颜色空间的转换1. trans_from_rgb算子2. trans_to_rgb算子3. create_color_trans_lut算子 图像的颜色能真实地反映人眼所见的真…

石家庄做网站设计当今做网站的流行趋势

1. 向项目添加app.config文件: 右击项目名称,选择“添加”→“添加新建项”,在出现的“添加新项”对话框中,选择“添加应用程序配置文件”;如果项目以前没有配置文件,则默认的文件名称为“app.config”&…

免费网页上传网站保定行业网站

文章目录 前言废话不说,直接安装总结 前言 docker 无法安装 4.9.6 由于之前安装的版本低,有漏洞,服务器无限被攻击.没办法只能安装高版本,但是docker无法安装,仓库中根本没有这个高版本的镜像 废话不说,直接安装 官网下载: 4.9.6下载地址上传到linux的一个位置如: /data/data…

做网站需要具备的基础条件wordpress主题框架

C 库函数 - tanh()描述C 库函数 double tanh(double x) 返回 x 的双曲正切。声明下面是 tanh() 函数的声明。double tanh(double x)参数x -- 浮点值。返回值该函数返回 x 的双曲正切。实例下面的实例演示了 tanh() 函数的用法。#include#include int main (){ double x, ret;…

建设一个下载资料的网站西宁网站设计公司

快直播-基于WebRTC升级的低延时直播-腾讯云开发者社区-腾讯云 标准WebRTC支持的音视频编码格式已经无法满足国内直播行业需求。标准WebRTC支持的视频编码格式是VP8/VP9和H.264,音频编码格式是Opus,而国内推流的音视频格式基本上是H.264/H.265AAC的形式。…

正规网站开发文案局域网网站架设

将自己开发好的django项目用uwsgi部署到Linux服务器、当运行uwsgi时出现了uwsgi选择python版本的问题。因为本机器是在原来的机器上安装了python3环境和pip3, 使用命令安装uwsgi: pip3 install uwsgi 一点问题也没有,使用uwsgi部署项目时 uwsgi --http :…

怎么给网站做第三方app杭州设计公司老总被点火

本文译自Deep Multi-Task Learning – 3 Lessons Learned by Zohar Komarovsky在过去几年里,Multi-Task Learning (MTL)广泛用于解决多个Taboola(公司名)的业务问题。在这些业务问题中, 人们使用一组相同的特征以及深度学习模型来…

怎么看网站是否安装百度商桥代码织梦播放器网站

RocketMQ是阿里开源的消息中间件产品,纯Java开发,具有高吞吐量、高可用性、适合大规模分布式系统应用的特点,性能强劲(零拷贝技术),支持海量堆积,在阿里内部进行大规模使用,适合在互联网与高并发系统中应用。 官方文档&#xff1a…

购物网站建设网页推广南宁网站开发价格

文章目录 第16章_网络编程本章专题与脉络1. 网络编程概述1.1 软件架构1.2 网络基础 2. 网络通信要素2.1 如何实现网络中的主机互相通信2.2 通信要素一:IP地址和域名2.2.1 IP地址2.2.2 域名 2.3 通信要素二:端口号2.4 通信要素三:网络通信协议…

flash网站模板中心东莞网站建设优化方案

目录 最后一台主机(第四台) 本地yum源安装httpd(非必做) 继续开始从最后一台主机开始(第四台) 转第二台主机 转第三台主机 回第二台 上传 转第三台主机 上传 回第二台 转第三台 转第一台主机…

平面素材网站排名帝国cms做的网站

从零开始搭建一个vue项目 一、环境准备 1.1 安装node.js 选择合适的LTS版本,然后下载安装,安装地址:https://nodejs.org/en/download 在命令行中查看已安装的node.js版本 node -v v14.14.01.2 切换为淘宝的镜像源 解决国内下载慢的问题,…

企业网站长度域名不变 新网站

这两种写法在C#中都是有效的,但是它们代表了不同的语法风格和C#版本特性。 第一种写法: namespace Nebula.PDF; public class PdfDocument {}这是C# 9.0及更高版本中引入的顶级语句(top-level statements)特性。它允许你直接在文…

建设网站平台哪里最好建设网站制作公司如何选择

黑色星期五,作为全球购物狂欢的象征,已经成为了电商业务的一年一度的重要节点。尤其对于跨境电商来说,这一天意味着巨大的商机和挑战。为了在这个竞争激烈的时刻脱颖而出,跨境电商必须做好充分的准备。Nox聚星在这里给大家分享几个…

怎么样模仿一个网站做简历学做巧裁缝官方网站

目录 1.私信列表 1.1 数据访问层 1.2 业务层 1.3 表现层 1.4 私信详情 2.发送列表 2.1 数据访问层 2.2 业务层 2.3 表现层 2.4 设置已读状态 1.私信列表 私信列表:查询当前用户的会话列表,每个会话只显示一条最新的私信、支持分页列表私信详情…

泰安网站建设哪里有wordpress您访问的网页出错

Android 为了让我们能够更加方便的管理数据库,特意提供了一个SQLiteOpenHelper帮助类,通过借助这个类就可以非常简单的对数据库进行创建和升级。 SQLiteOpenHelper是一个抽象类,我们要创建一个自己的帮助类去继承它。SQLiteOpenHelper有两个抽…

南翔企业网站开发建设好玩的网页游戏排行

团队名称:筑梦之舟 团队项目名称:跑跑 N(Need)需求: 有许多人在跑步时想了解自己的移动轨迹和跑步距离很不便利,无法了解跑步的日程,我们的软件就是为了更加方便热爱跑步的人能够参加到跑步之中…