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

相关推荐
jingshaoqi_ccc10 小时前
ubuntu 24下面安装docker
ubuntu·docker·eureka
关关长语11 小时前
Vue本地部署包快速构建为Docker镜像
前端·vue.js·docker
水滴与鱼12 小时前
DOCKER制作ROS运行的镜像文件
运维·docker·容器
洒家肉山大魔王14 小时前
Kubernetes中Pod 处于 CrashLoopBackOff 状态(生产环境)
linux·容器·kubernetes·pod·pod循环重启
杨浦老苏15 小时前
安全的消息传递和协作工具Virola Messenger
docker·即时通讯·群晖·im
Lynnxiaowen15 小时前
今天我们学习kubernetes内容Ingress资源对象
学习·容器·kubernetes
jason成都16 小时前
emqx的docker部署
运维·docker·容器
mixboot17 小时前
docker 国内镜像源
docker·镜像源
谷粒.17 小时前
云原生时代的测试策略:Kubernetes环境下的测试实践
运维·网络·云原生·容器·kubernetes
java_logo18 小时前
Milvus GUI ATTU Docker 容器化部署指南
运维·数据库·docker·容器·eureka·milvus