Docker 快速入门指南

news/2025/4/1 4:31:42/

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 文件定义和运行多容器应用。

dockercomposeyml__144">3.1 docker-compose.yml 示例

version: '3.1'# 网络设置
networks:my-network:name: my-networkdriver: bridge# 服务设置
services:# my_server 容器my_server:image: ubuntu:24.04container_name: my_serverrestart: alwayscommand: tail -f /dev/null #保持启动networks:- my-networkports:- "33022:22"     # sshvolumes:- "./my/data:/data"

3.2 Docker Compose 常用命令

# 启动所有服务
docker-compose up -d# 查看服务状态
docker-compose ps# 停止所有服务
docker-compose down

4. 总结

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


http://www.ppmy.cn/news/1584082.html

相关文章

大模型在支气管扩张预测及治疗方案制定中的应用研究

目录 一、引言 1.1 研究背景与意义 1.2 研究目的与方法 1.3 国内外研究现状 二、大模型技术概述 2.1 大模型的基本原理与架构 2.2 适用于支气管扩张预测的大模型类型及特点 2.3 大模型在医疗领域的应用现状与优势 三、支气管扩张的相关医学知识 3.1 支气管扩张的病因…

Vue3.5 企业级管理系统实战(十一):全屏切换组件

本篇主要探讨如何在导航栏&#xff08;Navbar&#xff09;中添加全屏切换按钮&#xff0c;并借助功能强大的 screenfull 插件&#xff0c;丝滑实现全屏切换功能&#xff0c;为用户打造更为便捷、流畅的交互体验。 1 安装插件 screenfull screenfull 是一个轻量级的 JavaScript…

Appium中元素定位之一组元素定位API

应用场景 和定位一个元素相同&#xff0c;但如果想要批量的获取某个相同特征的元素&#xff0c;使用定位一组元素的方式更加方便 在 Appium 中定位一组元素的 API 与定位单个元素的 API 类似&#xff0c;但它们返回的是一个元素列表&#xff08;List<MobileElement>&am…

蓝桥杯 班级活动

问题描述 小明的老师准备组织一次班级活动。班上一共有 n 名同学&#xff08;n 为偶数&#xff09;&#xff0c;老师想把所有同学进行分组&#xff0c;每两名同学一组。 为了公平&#xff0c;老师给每名同学随机分配了一个 n 以内的正整数作为 id&#xff0c;第 i 名同学的 i…

C#基础学习(八)终章 C#中的结构体

假如你要用数据记录一个人&#xff0c;你觉得要记录些什么&#xff0c;身高&#xff0c;体重&#xff0c;名字等。那两个人呢&#xff0c;他是不是也有这样的特征&#xff0c;那我们是不是就可以用一种数据类型将他们共有的特征提取出来&#xff0c;这就是我们今天讲的结构体。…

智能制造:自动化焊装线的数字化设计

通过建设焊装车间生产线智能制造系统&#xff0c;致力于打造一个智能化、绿色环保的工厂&#xff0c;不仅提高生产效率&#xff0c;还将节能减排与环保理念深入到生产流程的每一环节&#xff0c;推动制造业向更高的智能化与绿色化方向迈进。 项目目标 智能制造及绿色工厂的打造…

大数据分析与挖掘实训室总体介绍

一、实训室建设目的与意义 大数据分析与挖掘实训室的建设旨在满足当前社会对大数据专业人才的迫切需求。随着大数据技术在各个行业的广泛应用&#xff0c;如金融、医疗、电商等领域&#xff0c;企业对具备数据采集、预处理、分析与挖掘以及数据可视化能力的专业人才需求激增。…

(C语言)指针运算 习题练习1.2(压轴难题)

在上一张已经练习了三道习题&#xff0c;小试牛刀了&#xff0c;那么在本章在来几题&#xff0c;练练手。&#xff08;习题三是压轴难题&#xff09; 习题一 int main() {int aa[2][5] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };int* ptr1 (int*)(&aa 1);int* ptr2 (int*)…