76.第十七章 企业级容器技术docker -- Docker 镜像制作和管理(四)
2023-09-14 09:09:04 时间
2.Docker 镜像制作和管理
2.1 Docker 镜像说明
2.1.1 Docker 镜像中有没有内核
从镜像大小上面来说,一个比较小的镜像只有1MB多点,或几MB,而内核文件需要几十MB, 因此镜像里面是没有内核的,镜像在被启动为容器后将直接使用宿主机的内核,而镜像本身则只提供相应的rootfs,即系统正常运行所必须的用户空间的文件系统,比如/dev/,/proc,/bin,/etc等目录,容器当中/boot目录是空的,而/boot当中保存的就是与内核相关的文件和目录。
2.1.2 为什么没有内核
由于容器启动和运行过程中是直接使用了宿主机的内核,不会直接调用过物理硬件,所以也不会涉及到硬件驱动,因此也无需容器内拥有自已的内核和驱动。而如果使用虚拟机技术,对应每个虚拟机都有自已独立的内核
2.1.3 容器中的程序后台运行,会导致此容器启动后立即退出?
Docker容器如果希望启动后能持续运行,就必须有一个能前台持续运行的进程,如果在容器中启动传统的服务,如:httpd,php-fpm等均为后台进程模式运行,就导致 docker 前台没有运行的应用,这样的容器启动后,会立即自杀。所以一般会将服务程序以前台方式运行,对于有一些可能不知道怎么前台运行的程序,只需要在你启动的命令之后添加类似于 tail ,top 这种可以前台运行的程序即可,比较常用的方法,如tail -f /etc/hosts 。
范例:
相关文章
- [翻译] 理解Docker容器网络
- 前后端项目部署-4, flask+Gunicorn+gevent+supervisor+nginx+redis,docker-compose部署
- docker技术简介
- docker底层技术概览
- Docker技术原理
- Docker 基础技术之 Linux cgroups 详解
- 配置Docker以使用Kata Containers
- docker 每次都得source /etc/profile以及如何查看Docker容器环境变量、向容器传递环境变量
- 使用阿里云容器服务Jenkins实现持续集成和Docker镜像构建(updated on 2017.3.3)
- [Docker] 使 Volume 独立于容器运行时的方式 - 让容器引擎去处理
- 【华为云技术分享】Mind Studio Docker镜像部署分享
- 把设备分享给每个Docker Container
- GIS+=地理信息+容器技术(4)——Docker执行
- 80.第十七章 企业级容器技术docker -- Docker 数据管理(八)
- 77.第十七章 企业级容器技术docker -- Docker 镜像制作和管理(五)
- 【云原生之Docker实战】使用Docker部署zfile在线文件目录程序
- docker修改容器内nginx配置文件
- Docker 容器内存:我的容器为什么被杀了?
- docker 访问 GPU NVIDIA Prometheus 监控
- Docker理论— 虚拟化技术分类