- 1、本文档共89页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
项目六 应用程序容器化Docker容器技术 配置、部署与应用能力要求进一步熟悉Docker镜像,掌握开发镜像的方法。CAPACITY熟悉应用程序容器化的基本方法和步骤。掌握Java应用程序容器化的方法。掌握PHP应用程序容器化的方法。掌握Python应用程序容器化的方法。任务一 构建应用程序镜像任务二 对应用程序进行容器化任务三 Java应用程序容器化任务四 PHP应用程序容器化任务五 Python应用程序容器化任务一 构建应用程序镜像01OPTION了解编写Dockerfile的准则02OPTION确定应用程序镜像包含的内容03OPTION进一步熟悉构建镜像并进行测试的操作步骤04OPTION掌握多阶段构建镜像的方法任务说明任务一 构建应用程序镜像编写Dockerfile的准则和建议创建短生命周期的容器。正确理解构建上下文。使用.dockerignore文件排除与构建无关的文件。使用多阶段构建。① 安装构建应用程序所需的工具。② 安装或更新库依赖。③ 生成应用程序。不要安装不必要的包。知识引入任务一 构建应用程序镜像编写Dockerfile的准则和建议解耦应用程序。使镜像层数最少。只有RUN、COPY和ADD指令会创建层,其他指令创建临时的中间层镜像,不会直接增加构建镜像的大小。尽可能使用多阶段构建功能,仅将所需的文件复制到最终的镜像中。对多行参数排序。利用构建缓存。知识引入任务一 构建应用程序镜像创建自己的基础镜像如果多个镜像有很多共同点,则可以将公共部分抽出来创建自己的基础镜像,然后再基于它创建每个镜像。基础镜像在其Dockerfile中没有定义FROM指令,或者FROM指令的参数为scratch。使用Debootstrap创建一个Ubuntu父镜像的Dockerfile示例。debootstrap xenial xenial /dev/nulltar -C xenial -c . | docker import - xenialdocker run xenial cat /etc/lsb-releaseDISTRIB_ID=UbuntuDISTRIB_RELEASE=16.04DISTRIB_CODENAME=xenialDISTRIB_DESCRIPTION=Ubuntu 16.04 LTS知识引入任务一 构建应用程序镜像确定应用程序镜像包含的内容① 选择基础镜像。② 安装必要的软件包。③ 添加自定义文件。④ 定义容器运行时的用户权限,尽可能避免容器以root权限运行。⑤ 定义要对外暴露的端口。⑥ 定义应用程序的入口点。⑦ 定义配置方式。⑧ 持久化应用程序数据。知识引入任务一 构建应用程序镜像构建镜像执行镜像构建时要注意不要依赖自动创建的latest标签。构建镜像时应始终添加有意义的标签。管理镜像镜像是打包好的Docker应用程序,生成的镜像需要后续管理。发布镜像最简单的办法是使用Docker注册中心,比如Docker Hub、Docker Trusted Registry,或者运行自己的私有注册中心。知识引入任务一 构建应用程序镜像任务实现使用scratch创建简单的镜像① 建立一个目录用作构建上下文,并切换到该目录。② 在该目录中准备所需的文件,添加一个可执行文件hello用于实验。该文件来自官方镜像hello-world。③ 创建Dockerfile文件并加入以下内容。FROM scratchADD hello /CMD [/hello]④ 使用docker build命令构建镜像。[root@host1 baseimg-scratch]# docker build --tag hello . ⑤ 使用docker run命令运行这个新镜像启动一个容器,显示的结果与官方镜像hello-world相同。[root@host1 baseimg-scratch]# docker run --rm helloHello from Docker!……任务一 构建应用程序镜像任务实现制作一个基于VNC的Firefox镜像① 建立一个目录用作构建上下文,并切换到该目录。② 在该目录中创建Dockerfile文件。FROM ubuntu# 安装用于创建图形化界面的VNC和xvfb,以及浏览器FirefoxRUN apt-get update apt-get install -y x11vnc xvfb firefoxRUN mkdir ~/.vnc# 设置VNC登录密码RUN x11vnc -storepasswd 1234 ~/.vnc/passwd# 自动启动Firefox RUN bash -c echo firefox /.bashrcEXPOSE
文档评论(0)