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, 作者也经常忘记指令,写篇文章记录一下。

相关推荐
Java陈序员1 天前
轻量强大!一款现代化的 Kubernetes 集群管理与监控工具!
云原生·容器·kubernetes
Sheffield3 天前
Docker的跨主机服务与其对应的优缺点
linux·网络协议·docker
Sheffield3 天前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
马艳泽3 天前
win10下运行Start Broker and Proxy报错解决
docker
用户13573999256604 天前
Windows 从 0 搭建 WSL2 原生 AI 开发环境:Codex + Docker + VSCode
docker
vi_h4 天前
在 macOS 上通过 Docker 安装并运行 Ollama(详细可执行教程)
macos·docker·ollama
黑心老魔4 天前
通过 Docker 创建开发环境
docker·开发环境
冬奇Lab5 天前
一天一个开源项目(第41篇):Workout.cool - 现代化开源健身教练平台,训练计划与进度追踪
docker·开源·资讯
天朝八阿哥5 天前
使用Docker+vscode搭建离线的go开发调试环境
后端·docker·visual studio code
阿虎儿6 天前
Docker安装(非sudo用户可用)
docker