Docker
Docker 是一个开源的容器化平台,用于开发、部署和运行应用程序。它通过容器(Container)技术将应用程序及其依赖项打包成标准化单元,实现跨环境的一致性运行。
·
Docker 简介
Docker 是一个开源的容器化平台,用于开发、部署和运行应用程序。它通过容器(Container)技术将应用程序及其依赖项打包成标准化单元,实现跨环境的一致性运行。
核心概念
- 镜像(Image):只读模板,包含运行应用程序所需的文件系统和配置。
- 容器(Container):镜像的运行实例,具有独立的进程空间和文件系统。
- Dockerfile:文本文件,定义如何构建镜像。
- Docker Hub:公共镜像仓库,提供预构建的镜像。
安装 Docker
- Linux(以 Ubuntu 为例):
sudo apt update sudo apt install docker.io sudo systemctl start docker sudo systemctl enable docker
- macOS/Windows:
下载 Docker Desktop 并安装。
常用命令
-
镜像操作:
# 拉取镜像 docker pull nginx:latest # 列出本地镜像 docker images # 删除镜像 docker rmi nginx
-
容器操作:
# 启动容器 docker run -d -p 80:80 --name my_nginx nginx # 查看运行中的容器 docker ps # 停止容器 docker stop my_nginx # 进入容器终端 docker exec -it my_nginx bash
-
构建镜像:
创建Dockerfile
文件:FROM ubuntu:20.04 RUN apt update && apt install -y python3 CMD ["python3", "--version"]
构建并运行:
docker build -t my_python . docker run my_python
网络与存储
-
网络模式:
# 创建自定义网络 docker network create my_net # 指定网络运行容器 docker run --network=my_net nginx
-
数据卷:
# 挂载主机目录 docker run -v /host/path:/container/path nginx # 创建匿名卷 docker volume create my_volume
实际应用场景
- 微服务部署:将每个服务打包为独立容器,通过 Docker Compose 编排。
- CI/CD 流水线:在测试和生产环境中使用相同镜像保证一致性。
- 开发环境隔离:避免“在我机器上能运行”的问题。
常见问题排查
- 权限问题:在 Linux 中,将用户加入
docker
组:sudo usermod -aG docker $USER
- 端口冲突:检查主机端口是否被占用,或调整映射端口(如
-p 8080:80
)。 - 资源限制:通过
--memory
和--cpus
参数限制容器资源。
通过掌握这些基础操作和概念,可以快速利用 Docker 提升开发和部署效率。
更多推荐
所有评论(0)