容器化交付流程设计

基于k8s实现CI和CD

Dockerfile编写

     Dockerfile的目标是将应用进行抽象打包,通过构建出产出的docker image实现标准化交付

     一个好的docker运行起来的容器必须遵守单一进程原则.给docker镜像一个唯一的前台进程作为启动容器的命令,这样才能是容器一直处于运行状态.否则命令一旦执行完毕,容器就会自动退出.

   前台进程   

       默认情况下,我们启动的每一个进程都是前台进程.它从键盘获得输入并发送它的输出到屏幕。当一个进程运行在前台时,我们不能在同一命令行提示符下运行任何其他命令(启动任何其他进程)因为在程序结束它的进程之前命令行提示符不可用。

 Dockerfile语法

     EXPOSE             只是起到说明文档的作用,并没有任何实际操作功能
     ENV                    相当于export指令
     ENTRYPOINT    是以/bin/sh -c ENTRYPOINT 也就代表以ENTRYPOINT。启动的容器中PID=1的进程是/bin/sh 而不是ENTRYPOINT 。当用户在外部杀掉一个容器的时候,只有在容器中PID=1的进程能收到终止信号量
     CMD 常用容器启动命令
     VOLUME 说明文档的作用
     USER 保证整个容器是以指定用户来运行的,而不是root的身份来运行容器

 dockerfile语法优化

 容器编排系统介绍

     

   组件交互流程

     

 

猜你喜欢

转载自www.cnblogs.com/yxh168/p/12358410.html