写代码第一步 环境
刚开始接触各种语言的时候c++ c python的时候
或者是直接复现一个简单的项目
最头疼的莫过于配置环境 很多代码都是因为环境冲突 环境互相依赖冲突导致跑不起来
这时候就会了解到虚拟环境
会有各种各样的教程告诉你如何配置虚拟环境巴拉巴拉的
但我还是经历了很长时间才真正的理解
我刚接触的时候觉得真的好麻烦啊
为什么不能直接在我的电脑上都能跑通 我还要一遍一遍的配置各种各样的虚拟环境
现在我的理解就是不同的项目依赖的东西就是不同的圈子
项目A可能是植物类的 项目B可能是动物类
他们直接会有交集 但有些东西又是不一样的 比如植物可以光合作用 动物可以随意运动等等
我们不可能做到一个环境统筹所有内容 所以方便起见有了虚拟环境
根据管理内容的不同 就有了主要的三种环境
- 虚拟环境 (venv)
- Conda 环境
- Docker
| 工具 | 一句话定位 | 隔离对象 |
|---|---|---|
| venv | Python 项目的轻量级虚拟环境 | 仅 Python 解释器 + 第三方包 |
| conda | 跨语言的包管理与环境工具 | Python 解释器 + 第三方包 + 非 Python 依赖(如 CUDA、OpenSSL) |
| Docker | 操作系统级容器 | 整个文件系统、网络、进程、用户空间 |
| 对比维度 | venv | conda | Docker |
|---|---|---|---|
| 所属生态 | Python 内置(3.3+) | Anaconda / Miniconda | Docker Inc.(容器生态) |
| 隔离级别 | 进程级(环境变量) | 进程级(环境变量) | 操作系统级(namespace + cgroups) |
| 隔离对象 | Python 解释器 + 第三方包 | Python + 第三方包 + 非 Python 依赖(如 CUDA) | 整个文件系统、网络、进程、用户空间 |
| 能否管理 Python 版本 | ❌ 不能(用宿主机 Python) | ✅ 能(python=3.10) | ✅ 能(通过不同基础镜像) |
| 能否管理非 Python 依赖 | ❌ 不能 | ✅ 能(conda 包可含二进制) | ✅ 能(任意系统库,如 libssl、ffmpeg) |
| 跨平台一致性 | ⚠️ 弱(依赖宿主机 OS) | ⚠️ 中等(与 OS 绑定,但 conda 预编译) | ✅ 强(镜像包含完整 OS,行为一致) |
| 启动速度 | 极快(毫秒级) | 快(毫秒级) | 中等(秒级,需启动容器进程) |
| 磁盘占用 | 极小(几 MB,仅存包列表) | 中等(每环境几百 MB) | 较大(镜像几百 MB 到几 GB) |
| 打包与分发 | requirements.txt | environment.yml | Dockerfile → 镜像仓库 |
| 适用场景 | 简单 Python 项目,仅需隔离包版本 | 数据科学、机器学习(需复杂二进制依赖) | 微服务部署、统一开发/生产环境、系统级隔离 |
| 生产环境推荐度 | 低 | 中(镜像较大) | 高(标准部署方式) |
| 典型命令 | python -m venv env | conda create -n env python=3.10 | docker build -t myapp . |
| 激活方式 | source env/bin/activate | conda activate env | docker run -it myapp |
那么就很好理解了 这个venv就是可以把不同python包改善一下版本 conda就是可以把python版本都改了 docker就是可以把你操作系统给改了
docker快速安装
通过 Ubuntu 官方仓库安装 (docker.io)
这是最简单的方法,但软件版本可能不是最新的。
# 1. 更新软件包列表
sudo apt update
# 2. 直接通过 apt 安装 docker.io 包
sudo apt install docker.io🧑💻 安装后配置(重要)
避免重复输入sudo:默认情况下,运行 Docker 命令需要 sudo 权限。将你的用户添加到 docker 用户组后,重新登录,之后就可以直接使用 docker 命令了。
sudo usermod -aG docker $USER⚠️ 安全提示:docker 组的权限等同于 root 用户,请谨慎添加。
验证安装是否成功:运行一个简单的测试镜像来验证。
docker run hello-world如果安装成功,你会看到一条欢迎消息,说明 Docker 引擎正在运行。
Windows 系统 Docker 安装
在Windows上,Docker Desktop是官方推荐的安装方式。建议优先选择使用WSL 2作为后端,其性能更好、资源占用更低。
第一步:启用WSL 2功能
以管理员身份打开 PowerShell,执行以下命令即可自动安装WSL 2并设置为默认版本:
wsl --install如果你的系统不支持此命令,可以手动在“控制面板” -> “程序” -> “启用或关闭 Windows 功能”中,勾选“适用于Linux的Windows子系统”和“虚拟机平台”,然后重启电脑。
第二步:下载并安装Docker Desktop
下载:访问 Docker 官网下载页面,下载适用于 Windows 的安装包。
安装:运行下载的 Docker Desktop Installer.exe,建议在安装过程中勾选 "Use WSL 2 instead of Hyper-V"(使用 WSL 2 代替 Hyper-V)选项。
第三步:启动与验证
安装完成后,从开始菜单启动 Docker Desktop。Docker 图标会在系统托盘中显示,等待其状态变为 "Docker Desktop is running"。打开 PowerShell 或 命令提示符,输入以下命令验证:
docker --version如果输出版本号信息,就说明安装成功了。
评论 (0)