容器化交付流程设计
基于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语法优化
容器编排系统介绍
组件交互流程
本文来自博客园,作者:不懂123,转载请注明原文链接:https://www.cnblogs.com/yxh168/p/12358410.html