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

相关推荐
功德+n5 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
小敬爱吃饭6 小时前
Ragflow Docker部署及问题解决方案(界面为Welcome to nginx,ragflow上传文件失败,Docker中的ragflow-cpu-1一直重启)
人工智能·python·nginx·docker·语言模型·容器·数据挖掘
木子欢儿6 小时前
Docker Hub 镜像发布指南
java·spring cloud·docker·容器·eureka
coppher7 小时前
Ubuntu 22.04 amd64 离线安装 Docker 完整教程
linux·docker
虚伪的空想家9 小时前
k8s集群configmap和secrets备份脚本
linux·容器·kubernetes
SXJR9 小时前
k8s中的Pod
云原生·容器·kubernetes
文静小土豆9 小时前
K8s 滚动更新在 Java 应用中的实践与优化
java·容器·kubernetes
w6100104669 小时前
CKA-2026-Ingress
云原生·容器·kubernetes·cka
bloglin9999910 小时前
docker logs 如何一直监听日志输出
运维·docker·容器
说实话起个名字真难啊10 小时前
Docker 入门之网络基础
网络·docker·php