docker基础入门
Docker 是一个开源的容器化平台,它让你可以像“打包程序”一样,把应用和运行环境都打包成一个 镜像(Image),然后在任何地方快速运行这个“包”作为一个 容器(Container)。
🌟 核心概念
|
概念 |
简介 |
|---|---|
|
镜像(Image) |
类似于“应用程序的快照”,包含代码 + 依赖 + 配置,是运行容器的模板。类似 ISO 文件。 |
|
容器(Container) |
镜像的运行实例,轻量的运行环境,启动非常快。类似虚拟机但更轻。 |
|
Dockerfile |
定义镜像内容的脚本,用于构建镜像。 |
|
仓库(Registry) |
存储镜像的地方,如 Docker Hub 或私有仓库。 |
|
Docker Engine |
Docker 的运行时,负责构建、运行、管理镜像和容器。 |
🧩 镜像(Image)
-
镜像是只读的,分层构建,类似 Git 版本。
-
一旦构建好,就可以在任何有 Docker 的机器上运行,不需要重新配置环境。
📦 容器(Container)
-
是镜像的一个运行实例,带有自己的 文件系统、网络、进程空间。
-
容器是轻量级的、可移植的、快速启动。
🛠️ 常用 Docker 命令
👉 镜像相关
docker build -t myapp . # 使用 Dockerfile 构建镜像
docker images # 查看本地镜像
docker rmi 镜像名/ID # 删除镜像
docker pull 镜像名[:tag] # 下载镜像
docker push 镜像名 # 上传镜像(需登录)
👉 容器相关
docker run -it 镜像名 bash # 启动并进入容器交互模式
docker run -d -p 8080:80 镜像 # 后台运行并映射端口
docker ps # 查看运行中的容器
docker ps -a # 查看所有容器
docker stop 容器ID # 停止容器
docker start 容器ID # 启动容器
docker rm 容器ID # 删除容器
👉 其他
docker exec -it 容器ID bash # 进入正在运行的容器
docker logs 容器ID # 查看容器日志
docker network ls # 查看网络
docker volume ls # 查看数据卷
✍️ 示例:最简单的 Dockerfile
# 使用官方基础镜像
FROM python:3.10-slim
# 拷贝文件
COPY . /app
WORKDIR /app
# 安装依赖
RUN pip install -r requirements.txt
# 启动命令
CMD ["python", "main.py"]
然后用下面的命令构建和运行:
docker build -t mypythonapp .
docker run mypythonapp
📌 总结一句话:
Docker 就是一个“轻量级应用沙盒”,可以“打包一次,运行无忧”,非常适合开发、测试、部署统一环境。
浙公网安备 33010602011771号