Docker 快速入门指南

Docker 快速入门指南

1. Docker 常用指令

Docker 是一个轻量级的容器化平台,可以帮助开发者快速构建、测试和部署应用程序。以下是一些常用的 Docker 命令。

1.1 镜像管理

复制代码
# 搜索镜像
docker search <image_name>

# 拉取镜像
docker pull <image_name>:<tag>

# 查看本地镜像
docker images

# 删除镜像
docker rmi <image_id>

1.2 容器管理

复制代码
# 运行容器(后台模式)
docker run -d --name <container_name> <image_name>

# 运行交互式容器
docker run -it --name <container_name> <image_name> /bin/bash

# 以交互式进入运行的容器
docker exec -it <container_name/container_id> /bin/bash

# 查看运行中的容器
docker ps

# 查看所有容器(包括停止的)
docker ps -a

# 停止容器
docker stop <container_id>

# 启动容器
docker start <container_id>

# 删除容器
docker rm <container_id>

1.3 网络管理

复制代码
# 查看网络
docker network ls

# 创建网络
docker network create <network_name>

# 删除网络
docker network rm <network_name>

1.4 数据卷管理

复制代码
# 创建数据卷
docker volume create <volume_name>

# 查看数据卷
docker volume ls

# 删除数据卷
docker volume rm <volume_name>

1.5 容器打包与导入导出

复制代码
# 将容器打包为镜像
docker commit <container_id> <new_image_name>

# 导出镜像
docker save -o <image_name>.tar <image_name>

# 导入镜像
docker load -i <image_name>.tar

2. Dockerfile 介绍

Dockerfile 是用于定义 Docker 镜像的文件,包含了一系列指令来描述如何构建镜像。

2.1 Dockerfile 示例

复制代码
# 选择基础镜像
FROM ubuntu:24.04

# 维护者信息
LABEL maintainer="my@example.com"

# 设置工作目录
WORKDIR /app

# 复制本地文件到容器
COPY . /app

# 安装必要的依赖
RUN apt-get update && apt-get install -y python3

# 暴露端口
EXPOSE 8080

# 设置启动命令
CMD ["python3", "app.py"]

2.2 Dockerfile 常用指令

  • FROM:指定基础镜像
  • LABEL:添加元数据
  • WORKDIR:设置工作目录
  • COPY:复制文件到容器
  • RUN:执行命令
  • EXPOSE:声明容器监听的端口
  • CMD:容器启动时执行的默认命令

2.3 Dockerfile 构建镜像的命令

复制代码
# 使用 Dockerfile 构建镜像
docker build -t <image_name>:<tag> .

# 指定 Dockerfile 文件构建镜像
docker build -f <Dockerfile_path> -t <image_name>:<tag> .

3. Docker Compose 介绍

Docker Compose 是用于管理多个容器的工具,使用 docker-compose.yml 文件定义和运行多容器应用。

3.1 docker-compose.yml 示例

复制代码
version: '3.1'

# 网络设置
networks:
  my-network:
    name: my-network
    driver: bridge

# 服务设置
services:
  # my_server 容器
  my_server:
    image: ubuntu:24.04
    container_name: my_server
    restart: always
    command: tail -f /dev/null #保持启动
    networks:
      - my-network
    ports:
      - "33022:22"     # ssh
    volumes:
      - "./my/data:/data"

3.2 Docker Compose 常用命令

复制代码
# 启动所有服务
docker-compose up -d

# 查看服务状态
docker-compose ps

# 停止所有服务
docker-compose down

4. 总结

本篇文章介绍了 Docker 的基本指令、Dockerfile 以及 Docker Compose,快速入手Docker, 作者也经常忘记指令,写篇文章记录一下。

相关推荐
PC2005-cloud13 分钟前
Qdrant 连接失败排查:localhost 解析到 __1,而 Docker 只绑了 IPv4
运维·docker·容器
喵喵爱自由43 分钟前
Deepseek Harness镜像离线部署
docker·ai·语言模型
一技安身1 小时前
【信创】Ollama 手动提取 deepseek-r1:1.5b模型迁移到内网机器
服务器·docker·语言模型
程序员老赵1 小时前
Docker 部署觅思文档:搭建私有化文档管理系统
docker·开源·笔记测评
Meta393 小时前
cenots8安装docker
docker·容器·centos
努力努力再努力wz4 小时前
【Docker入门系列】从 LXC 到 containerd:一文梳理 Docker 容器运行时架构演进与轻量化原理
docker·eureka·架构
CAE虚拟与现实6 小时前
docker desktop中的build功能是要build什么
java·docker·容器
fb_123456 小时前
Docker入门-第1-2章-容器生态系统与架构详解
docker·容器·架构
allnlei8 小时前
s6-overlay - 装在 Docker 容器里的轻量级管家
java·docker·容器
一技安身14 小时前
【Docker】 镜像导出 & 导入,实验环境aarch64(arm64)Linux操作系统
linux·docker·容器