docker-compose 常用命令:
- docker-compose build 构建(重新构建)项目中的服务容器。
- docker-compose up -d 在后台启动服务容器
- docker-compose stop 停止正在运行的容器,可以通过docker-compose start 再次启动
- docker-compose ps 列出目前所有的容器
docker 的原理和组成
- 什么时 Linux 容器:
Linux容器不是模拟一个完整的操作系统,而是对进程进行隔离,就像是给正常的进程外面套了一个保护层,对于容器里面的进程来说,它接触到的各种资源都是虚拟的,从而实现与底层系统的隔离。它相比虚拟机来说,因为是进程级别的,所以有很多优势:启动快、资源占用少、体积小; 容器与宿主机是共享系统内核的。
- Docker和Linux容器是什么关系?
Docker属于Linux容器一种封装,提供简单易用的容器使用接口;它将应用程序与该程序的依赖打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机运行一样
总结: docker 属于Linux 容器的一种封装,提供简单易用的使用接口,而Linux容器是对进程进行隔离,它与宿主机共享系统内核。
docker 与虚拟机的区别
- 虚拟机是在硬件级别进行虚拟化,而docker 是在操作系统层面进行虚拟化
- 虚拟机时通过模拟硬件搭建操作系统,而docker 是复用操作系统。
- 虚拟机实现了操作系统之间的隔离,而docker 只是进程之间的隔离。
总结:
- 虚拟机是在硬件级别的虚拟化,通过模拟硬件来搭载操作系统,实现操作系统之间的隔离。
- docker是在操作系统层面进行虚拟化,是进程间的隔离,复用了操作系统
docker 网络
- bridge 模式:此模式将容器连接到一个docker0虚拟网桥,通过docker0网桥以及Iptables nat表配置与宿主机通信
- host 模式:容器将不会虚拟出自己的网卡,配置自己的IP等,而是直接与宿主机的共享IP和端口
- none 模式:该模式关闭了容器的网络功能。
https://www.cnblogs.com/windyet/articles/10139739.html
docker 是如何实现隔离的
Linux 内核提供 namespace 完成隔离,Cgroup 完成资源限制