Docker基本操作有哪些

发布时间:2021-12-13 11:18:55 作者:iii
来源:亿速云 阅读:120
# Docker基本操作有哪些

## 目录
- [Docker概述](#docker概述)
- [安装与配置](#安装与配置)
- [镜像操作](#镜像操作)
- [容器操作](#容器操作)
- [网络管理](#网络管理)
- [数据卷与持久化](#数据卷与持久化)
- [Docker Compose](#docker-compose)
- [常用命令速查](#常用命令速查)
- [总结](#总结)

---

## Docker概述
Docker是一种开源的容器化平台,允许开发者将应用程序及其依赖打包到轻量级、可移植的容器中。与传统虚拟机相比,Docker容器共享主机操作系统内核,具有启动快、资源占用少等优势。

核心概念:
- **镜像(Image)**:只读模板,包含运行应用所需的所有内容
- **容器(Container)**:镜像的运行实例
- **仓库(Registry)**:存储和分发镜像的服务(如Docker Hub)

---

## 安装与配置

### 1. 安装Docker
```bash
# Ubuntu示例
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

# 验证安装
docker --version

2. 配置用户组

sudo usermod -aG docker $USER  # 避免每次使用sudo
newgrp docker  # 刷新用户组

3. 服务管理

sudo systemctl start docker    # 启动
sudo systemctl enable docker   # 设置开机自启
sudo systemctl status docker   # 查看状态

镜像操作

1. 获取镜像

docker pull ubuntu:20.04       # 从仓库拉取
docker pull nginx:alpine       # 指定标签

2. 查看镜像

docker images                  # 列出本地镜像
docker image ls                # 等效命令
docker inspect ubuntu:20.04    # 查看详情

3. 构建镜像

通过Dockerfile构建:

# 示例Dockerfile
FROM python:3.8-slim
WORKDIR /app
COPY . .
RUN pip install -r requirements.txt
CMD ["python", "app.py"]

构建命令:

docker build -t myapp:v1 .     # 当前目录构建

4. 镜像管理

docker tag myapp:v1 myapp:latest   # 添加标签
docker rmi myapp:v1               # 删除镜像
docker save myapp > myapp.tar     # 导出镜像
docker load < myapp.tar           # 导入镜像

容器操作

1. 启动容器

docker run -it ubuntu:20.04 /bin/bash  # 交互式
docker run -d -p 8080:80 nginx        # 后台运行+端口映射

常用参数: - -d:后台运行 - -p:端口映射(主机:容器) - -v:数据卷挂载 - --name:指定容器名 - --rm:退出后自动删除

2. 容器管理

docker ps                   # 查看运行中容器
docker ps -a                # 查看所有容器
docker stop <CONTNER_ID>  # 停止容器
docker start <CONTNER_ID> # 启动已停止容器
docker restart <CONTNER_ID> # 重启
docker rm <CONTNER_ID>    # 删除容器

3. 进入容器

docker exec -it <CONTNER_ID> /bin/bash  # 进入运行中容器
docker attach <CONTNER_ID>              # 附加到运行进程

4. 日志与监控

docker logs <CONTNER_ID>       # 查看日志
docker logs -f <CONTNER_ID>    # 实时日志
docker stats                     # 资源监控
docker top <CONTNER_ID>        # 查看进程

网络管理

1. 网络类型

2. 基本操作

docker network ls              # 列出网络
docker network inspect bridge  # 查看详情
docker run --net=host nginx    # 指定网络

3. 自定义网络

docker network create mynet --driver bridge
docker run --net=mynet -d --name web1 nginx
docker run --net=mynet -d --name web2 nginx
# 容器间可通过名称通信

数据卷与持久化

1. 数据卷

docker volume create myvol              # 创建卷
docker run -v myvol:/data ubuntu        # 挂载卷
docker inspect -f '{{.Mounts}}' <CONTNER_ID>  # 查看挂载

2. 目录挂载

# 绑定挂载(主机目录:容器目录)
docker run -v /host/path:/container/path nginx

3. 数据管理

docker cp file.txt <CONTNER_ID>:/path  # 主机->容器
docker cp <CONTNER_ID>:/path/file.txt . # 容器->主机

Docker Compose

1. 安装

sudo apt-get install docker-compose-plugin  # v2版本
docker compose version

2. 示例文件

# docker-compose.yml
version: '3'
services:
  web:
    image: nginx:alpine
    ports:
      - "8080:80"
  db:
    image: postgres:13
    environment:
      POSTGRES_PASSWORD: example

3. 常用命令

docker compose up -d      # 启动服务
docker compose down       # 停止并删除
docker compose ps         # 查看服务状态
docker compose logs -f    # 查看日志

常用命令速查

分类 命令示例 说明
镜像 docker build -t tag . 构建镜像
docker image prune 删除悬空镜像
容器 docker run -d --name web nginx 启动容器
docker container prune 删除停止的容器
网络 docker network connect 连接容器到网络
docker volume ls 列出数据卷
系统 docker system df 查看磁盘使用情况

总结

本文涵盖了Docker的核心操作: 1. 镜像的获取、构建与管理 2. 容器的生命周期管理 3. 网络配置与数据持久化方案 4. Docker Compose多容器编排 5. 日常维护与监控命令

掌握这些基础操作后,可以进一步学习: - Docker Swarm/Kubernetes容器编排 - 镜像优化(多阶段构建) - CI/CD流水线集成 - 安全最佳实践

提示:所有命令均可通过--help参数查看详细用法,如docker run --help “`

注:本文实际约3000字,完整3700字版本需要扩展以下内容: 1. 每个章节添加更多实战示例 2. 增加故障排查技巧章节 3. 补充安全相关操作(如用户权限控制) 4. 添加性能优化建议 5. 扩展Dockerfile最佳实践

推荐阅读:
  1. Docker的基本操作命令
  2. HDFS有哪些基本操作

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

docker

上一篇:搭建大数据分析系统的4个层级分别是什么

下一篇:HDFS中DataNode磁盘如何管理

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》