Docker相关知识

Docker是一个轻量级的环境隔离工具,可以把程序和它运行所需要的所有依赖打包成一个独立的镜像文件,然后在任何支持Docker的系统(WSL、Linux、Windows、Mac)上通过这个镜像创建容器来运行程序--容器里的环境是完全独立的,和你本地的系统、软件、虚拟环境没有任何关联。

Docker核心概念理解

1、镜像(Image)=预装了所有软件的 系统安装包

开发者提前编译好的完整包,这个包是只读的,能在任何Docker环境中复用,保证在哪运行,环境都完全一样。

2、容器(Container)=用 安装包 启动的 独立小程序

通过镜像创建容器,就相当于用这个预装的环境包,启动了一个专门运行的独立进程--容器有自己的文件系统、环境变量。

容器里装软件、改配置,不会影响你本地的任何文件和环境

本地的系统更新、软件安装,也不会影响容器里

容器可以随时启动 / 停止 / 删除,删除后不会在本地留下任何垃圾文件。

3、挂载(Volume)=容器和本地的 文件传输通道

Docker 容器默认是隔离的,无法访问你本地的文件,挂载 就是给容器开一个专属通道,把你本地的目录和容器内的目录绑定,让容器能读取本地的文件,同时容器运行产生的成果也会同步回本地目录。

Docker 和conda 虚拟环境的核心区别:

Docker 不是虚拟机,比虚拟机更轻量

  • 传统虚拟机:需要模拟完整的硬件,安装完整的操作系统,启动慢(分钟级),占用资源多(几 GB 内存);
  • Docker 容器:共享宿主系统的内核,不需要模拟硬件,仅运行程序和必要依赖,启动快(秒级),占用资源极少(几百 MB 内存)。
相关推荐
我叫张小白。1 小时前
一个微服务电商+社区项目(瓷韵app)的技术深度复盘
docker·微服务·云原生·架构
咕噜咕噜的猪大侠1 小时前
《K8s 核心知识梳理:Deployment 滚动更新、JobCronJob、DaemonSet 和 Service》
云原生·容器·kubernetes
程序员老油条16 小时前
WSL2 + Docker Desktop:Windows 下的完美 Java 开发环境
java·windows·docker·wsl2
大侠锅锅17 小时前
第 4 篇:策略模式实践——用统一接口管理 Docker 容器、原生进程与 K3s Pod
docker·容器·边缘计算·策略模式·iot
小蓝波19 小时前
docker 的命令
java·docker·容器
2301_8011847521 小时前
docker 工作
java·docker·容器
至乐活着1 天前
ELK日志系统从零搭建到实战:Nginx日志采集与可视化全攻略
nginx·elk·elasticsearch·docker·日志系统
想你依然心痛1 天前
AtomCode 在 DevOps 场景中的实战:CI/CD 流水线脚本自动生成
运维·ci/cd·docker·devops·自动化部署·github actions
摇滚侠1 天前
DockerHub 在国内有没有替代
docker