Docker 简介

Docker 是一个开源的应用容器引擎,基于 Go 语言并遵从 Apache 2.0 协议开源。

什么是容器?

容器是一种轻量级的虚拟化技术,与传统虚拟机相比:

特性 容器 虚拟机
启动速度 毫秒级 分钟级
磁盘占用 MB 级 GB 级
性能 接近原生 有损耗
隔离级别 进程级 完全隔离
内核 共享宿主机内核 独立内核

核心概念

镜像(Image)

镜像是只读模板,包含运行应用所需的代码、运行环境、依赖库等。

# 查看本地镜像
docker images

# 拉取镜像
docker pull nginx:latest

# 构建镜像
docker build -t my-app:1.0 .

容器(Container)

容器是镜像的运行实例,可以启动、停止、删除。

# 运行容器
docker run -d --name web -p 80:80 nginx

# 查看运行中的容器
docker ps

# 停止容器
docker stop web

# 启动已停止的容器
docker start web

常用命令速查

# 镜像管理
docker images          # 列出镜像
docker rmi nginx       # 删除镜像
docker pull nginx      # 拉取镜像
docker build -t app .  # 构建镜像

# 容器管理
docker run -d nginx              # 后台运行
docker exec -it web bash         # 进入容器
docker logs -f web               # 查看日志
docker cp file.txt web:/tmp/     # 复制文件

安装 Docker

# Ubuntu
curl -fsSL https://get.docker.com | bash

# 验证安装
docker --version

# 运行测试
docker run hello-world