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

网站安全防黑联盟备案域名回收

网站安全防黑联盟,备案域名回收,网站设计培训学校有哪家,网站不足之处1 了解镜像 Docker镜像是一个特殊的文件系统#xff0c;除了提供容器运行时所需的程序、库、资源、配置等文件外#xff0c;还包含了一些为运行时准备的一些配置参数#xff08;如匿名卷、环境变量、用户等#xff09;。 但注意#xff0c; 镜像不包含任何动态数据#…1 了解镜像 Docker镜像是一个特殊的文件系统除了提供容器运行时所需的程序、库、资源、配置等文件外还包含了一些为运行时准备的一些配置参数如匿名卷、环境变量、用户等。 但注意 镜像不包含任何动态数据 /proc、/sys其中/proc里面装的主要是内核参数在内核运行状态不同时里面的值是不一样的而/sys目录则包含了系统资源的管理信息这两个目录中的数据都是动态生成的 因此其内容在构建好之后一般是不会变的。这里第一你要知道什么是动态数据第二将来我们要自己装一个linux操作系统你想把这个linux做成一个容器镜像其实很简单就是把linux里面所有的文件目录打包一份就行了但是打包的时候会把/proc和/sys这两个目录排除。因此 容器镜像不包含内核容器共用宿主机的内核 2 镜像的制作 2.1 通过对系统打包的方式制作镜像 1最小化安装一个操作系统 2将此系统文件打包把装的一个系统做成一个容器镜像也就是把根文件系统打个包就行了除了/proc和/sys之外 [rootnode02 ~]# tar -cvf --numeric-owner --exclude/proc --exclude/sys /data/centos7u2.tar /3将打包文件拷贝到运行容器的主机上 [rootnode02 ~]# scp centos7u2.tar 192.168.1.72:/root4利用打包文件生成镜像 [rootnode02 ~]# docker import centos7u2.tar docker.io/centos7u2:latest [rootnode02 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/centos7u2 latest 1e1148e4cc2c 30 seconds ago 987 MB5使用自己生成的镜像创建容器做测试 [rootnode02 ~]# docker run -itd --name c1 docker.io/centos7u2 /bin/bash2.2 基于Dockerfile文件制作镜像 1编写dockerfile文件 [rootnode02 ~]# cat /root/test01 FROM local-test/centos7.2:v1 RUN yum install -y httpd yum install -y vsftpd 解释FROM用于指定一个基础镜像RUN执行任务建议同一个任务的多条指令使用连接多个命令完成 2构建镜像 [rootnode02 ~]# docker build -t centos7.2-httpd:v2 -f test01 /root参数说明 -t用于指定镜像名称、标记-f指定dockerfile名称 3查看镜像 [rootnode02 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos7.2-httpd v2 2cdfd7a685f6 2 minutes ago 1.08 GB3 Dockerfile指令说明 3.1 FROM FROM image 用于指定基础镜像 3.2 MAINTAINER MAINTAINER name 用于指定镜像的作者信息当执行docker inspect指令时会有输出 。 3.3 RUN RUN command 或者 RUN [“command”,“arg1”,“arg2”] 用于执行基础镜像支持的任何指令 例如 RUN yum install -y net-tools RUN [“yum”,“install”,“-y”,“net-tools”] 3.4 CMD ENTRYPOINT 3.4.1 CMD CMD command arg1 arg2 或者 CMD [“command”,“arg1”,“arg2”] 用于指定容器启动时执行的操作 注意一个dockerfile中只能有一条 CMD 指令如果有多条则仅执行最后一条 # 使用CMD指令 FROM ubuntu CMD [echo, Hello World]3.4.2 ENTRYPOINT ENTRYPOINT 和 CMD 指令的用法很相似 ENTRYPOINT command arg1 arg2 或者 ENTRYPOINT [“command”,“arg1”,“arg2”] 用于指定容器启动时执行的操作 注意一个dockerfile中只能有一条 ENTRYPOINT指令如果有多条则仅执行最后一条 # 使用ENTRYPOINT指令 FROM ubuntu ENTRYPOINT [echo, Hello World]另外ENTRYPOINT指令还可以与CMD指令配合使用此时CMD指令后跟的不再是完整的可执行命令而仅是作为ENTRYPOINT指令后的参数使用如下所示 # ENTRYPOINT 和 CMD 指令配合使用 FROM ubuntu ENTRYPOINT [cat] CMD [-n,/etc/passwd]3.4.3 CMD 和 ENTRYPOINT 的区别 区别 如果在运行docker run命令时指定了参数那么将会覆盖CMD中指定的参数而ENTRYPOINT指令不会被覆盖而是被附加到docker run命令的参数之前。 总结来说CMD用于定义默认的容器启动命令可以被覆盖而ENTRYPOINT用于定义容器启动的主要命令不会被覆盖。 案例 使用 Dockerfile 构建 centos 镜像在 Dockerfile 中使用 CMD 和 ENTRYPOINT 。当 docker run 参数 的时候进行 CMD 和 ENTRYPOINT 的测试CMD指定的参数是否会被覆盖以及 ENTRYPOINT 指定的参数是否会附加到docker run命令的参数之前。 【测试CMD】 1编写dockerfile文件 $ vim dockerfile-centos-test FROM centos CMD [“ls”,“-a”] 2构建镜像 $ docker build -f dockerfile-centos-test -t cmd-test:0.1 . 3运行镜像 $ docker run cmd-test:0.1 可以看到列出了所有目录。 4这个时候我们在docker run 的时候追加一个命令参数 -l $ docker run cmd-test:0.1 -l 可以看到出现了错误在CMD的情况下加 -l 替换了dockerfile中的 CMD [“ls”,“-l”]但是由于 -l 不是命令所以就报错了。 5我们将 docker run 的命令参数 -l 改为 ls $ docker run cmd-test:0.1 ls 可以看到这个时候就执行成功了。 【测试 ENTRYPOINT】 1编写dockerfile文件 $ vim dockerfile-centos-test FROM centos ENTRYPOINT [“ls”,“-a”] 2构建镜像 $ docker build -f dockerfile-centos-test -t cmd-test:0.1 . 3运行镜像 $ docker run cmd-test:0.1 4这个时候追加一个命令 -l 使之成为 ls -al $ docker run cmd-test:0.1 -l 总结一下CMD的情况下docker run的参数 -l 替换了CMD的 ls -a。而ENTRYPOINT的情况下-l 参数追加到了 ls -a 的后面使之变成了ls -al。 3.5 ARG ARG key value Docker 1.9 版本 后新加入的指令ARG定义的变量只有在构建image时有效建立完成后变量消失 3.6 USER USER name 用于设置启动容器的用户默认为root 3.7 EXPOSE EXPOSE port1 port2 … 用于设置容器启动时要映射到物理机的端口容器启动后会将该端口映射到物理机上的随机端口 3.8 ENV ENV key value 用于为容器设置环境变量可以使用docker inspect查看也可以通过docker run --env key value 设置或修改环境变量该变量设置后后续的RUN指令都可以使用该变量 3.9 ADD COPY 3.9.1 ADD ADD src dest 用于将src指定的文件复制到容器的目录 例如 ADD /tmp/nginx-1.13.4.tar.gz /tmp/ 1所有拷贝到容器中的文件及目录权限为0755uid及gid均为0 2src如果是一个目录那会将该目录下所有文件拷贝到容器中不包括目录 3如果src是文件且dest不以/结束dest会被识别为文件src中的内容会把dest文件内容覆盖 4如果src是文件且dest以/结束则会将src文件拷贝到dest目录; 如果源文件是一个tar压缩包的话压缩格式为gzipbzip2以及xz的情况下ADD指令将会自动解压缩这个压缩文件到目标路径中在某些情况下这个自动解压缩的功能非常有用。 3.9.2 COPY COPY src dest 用于复制本地主机的src文件为Dockerfile所在目录的相对路径、文件或者目录)到容器的destdest路径不存在时会自动创建。 此外还需要注意一点使用 COPY 指令源文件的各种元数据都会保留比如读、写、执行权限、文件变更时间等。这个特性对于镜像定制很有用特别是构建相关文件都在使用 Git 进行管理的时候 3.9.3 ADD 和 COPY 的区别 共同点 都可以将主机上的资源加入到Dockerfile制作的镜像中。 不同点 官方建议 1尽可能的使用 COPY因为 COPY 的语义很明确就是复制文件而已 2需要自动解压缩的场合再使用ADD 另外需要注意的是ADD 指令会令镜像构建缓存失效从而可能会令镜像构建变得比较缓慢。因此在 COPY 和 ADD 指令中选择的时候可以遵循这样的原则所有的文件复制均使用 COPY 指令仅在需要自动解压缩的场合使用 ADD。 3.10 WORKDIR WORKDIR path 用于切换目录类似于cd命令对RUN, CMD, ENTRYPOINT指令生效 3.11 VOLUME VOLUME [“mount_point”] 用于创建一个本机或者为其他容器使用的挂载点用于数据的持久化保存 。 例如 FROM base VOLUME [/tmp/data] 通过dockerfile的 VOLUME 指令可以在镜像中创建挂载点这样只要通过该镜像创建的容器都有了挂载点但值得注意的是通过VOLUME 指令创建的挂载点无法指定主机上对应的目录而是自动生成的可以通过docker inspect查看。
http://www.pierceye.com/news/717288/

相关文章:

  • 网站制作完成ks刷粉网站推广马上刷
  • 网站注册域名位置网上买一个商标多少钱
  • 网站开发 无形资产门户网站搭建方案
  • 湘西北京网站建设网站建设好发信息网
  • 淄博公司网站建设网站设计编程有哪些
  • 如何获取网站访客qq如何知道一个网站用什么建设的
  • 快站app客户管理软件多少钱
  • 山西教育学会的网站建设工作做ppt课件的网站
  • 网站开发还有哪些班级网站如何去建设
  • 学校网站框架wordpress 多个网址导航
  • 茶叶红酒网站建设关键词的优化方法
  • 做网站后台用什么语言好吴川市建设工程公司网站
  • 海口专业网站建设公司怎样利用网站做淘宝客
  • 雄安专业网站建设方案长沙做网站建设
  • 微信上的网站实物黄金哪个网站做的好
  • 网站建设的作用和用途wordpress外网固定链接
  • 网站做多长时间才有流量上海商城网站制作公司
  • 做电影网站服务器网站如何备案 流程图
  • 太原建站模板搭建wordpress attachment
  • 购买腾讯备案网站网站错误列表
  • 怎么查看网站的外链php网站建设流程图
  • 顺企网萍乡网站建设wordpress 读者墙
  • 电力建设期刊网站投稿域名提供商
  • 广东网站备案需要多久oa信息化管理系统平台
  • 哪个网站可以做担保交易小程序排行榜
  • 网站用html做的怎么弄后台中铁十六局个人门户网
  • 一个网站怎么做流量统计佛山市seo广告优化工具
  • 机关网站建设需求文档国家住建部官网
  • 一条龙网站建设哪家好六安招聘网官网
  • 网站建设 中企动力阀门和建设银行类似的网站