当前位置: 首页 > article >正文

Docker 快速入门教程

1. Docker 基本概念

  • 镜像(Image): 只读模板,包含创建容器的指令

  • 容器(Container): 镜像的运行实例

  • Dockerfile: 用于构建镜像的文本文件

  • 仓库(Repository): 存放镜像的地方(如Docker Hub)

2. 安装Docker

根据你的操作系统选择安装方式:

  • Windows/macOS: 下载 Docker Desktop https://www.docker.com/products/docker-desktop

  • Linux (以Ubuntu为例):

    sudo apt-get update
    sudo apt-get install docker-ce docker-ce-cli containerd.io
  • 安装后验证:

    docker --version

3. 基本命令

镜像操作

# 拉取镜像
docker pull <镜像名>:<标签># 列出本地镜像
docker images# 删除镜像
docker rmi <镜像ID或名称>

容器操作

# 运行容器
docker run [选项] <镜像名># 常用选项:
-d        # 后台运行
-p 主机端口:容器端口  # 端口映射
--name    # 指定容器名称
-v 主机目录:容器目录  # 挂载卷# 列出运行中的容器
docker ps# 列出所有容器(包括停止的)
docker ps -a# 停止容器
docker stop <容器ID或名称># 启动已停止的容器
docker start <容器ID或名称># 删除容器
docker rm <容器ID或名称># 进入运行中的容器
docker exec -it <容器ID或名称> /bin/bash

4. 实战示例

运行Nginx服务器

docker run -d -p 8080:80 --name my-nginx nginx

访问 http://localhost:8080 查看Nginx欢迎页面

运行交互式Ubuntu容器

docker run -it ubuntu /bin/bash

5. 构建自定义镜像

  • 1、创建 Dockerfile 文件:

    FROM ubuntu:latest
    RUN apt-get update && apt-get install -y python3
    CMD ["python3", "--version"]
  • 2、构建镜像:

    docker build -t my-python .

3、运行容器:

docker run my-python

6. 常用技巧

  • 查看容器日志: docker logs <容器ID>

  • 查看容器资源使用: docker stats

  • 清理无用资源: docker system prune

  • 官方文档: Docker Docs

  • Docker Hub: https://hub.docker.com/

  • 交互式教程: Docker 101 Tutorial | Docker

翻译一下就是

1.docker客户端连接到docker的守护进程

2.docker守护进程拉取了hello-world镜像从docker hub仓库里面

3.docker守护进程用这个镜像创建了新的进程并运行了一个可执行文件

4.docker守护进程将流输出到docker客户端并发送到你的终端控制台

 

图如下

参考:

https://blog.csdn.net/qq_20009015/article/details/84642493

相关文章:

Docker 快速入门教程

1. Docker 基本概念 镜像(Image): 只读模板&#xff0c;包含创建容器的指令 容器(Container): 镜像的运行实例 Dockerfile: 用于构建镜像的文本文件 仓库(Repository): 存放镜像的地方&#xff08;如Docker Hub&#xff09; 2. 安装Docker 根据你的操作系统选择安装方式:…...

【锂电池SOH估计】BP神经网络锂电池健康状态估计,锂电池SOH估计(Matlab完整源码和数据)

目录 效果一览程序获取程序内容研究内容基于BP神经网络的锂电池健康状态估计研究摘要关键词1. 引言1.1 研究背景1.2 研究意义1.3 研究目标2. 文献综述2.1 锂电池SOH估计理论基础2.2 传统SOH估计方法2.3 基于BP神经网络的SOH估计研究进展2.4 研究空白与创新点3. BP神经网络原理3…...

Python常用的第三方模块之二【openpyxl库】读写Excel文件

openpyxl库模块是用于处理Microsoft Excel文件的第三方库&#xff0c;可以对Excel文件中的数据进行写入和读取。 weather.pyimport reimport requests#定义函数 def get_html():urlhttps://www.weather.com.cn/weather1d/101210101.shtml #爬虫打开浏览器上的网页resprequests.…...

成熟软件项目解决方案:360°全景影像显控软件系统

​若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/147425300 长沙红胖子Qt&#xff08;长沙创微智科&#xff09;博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、Open…...

前端开发核心知识详解:Vue2、JavaScript 与 CSS

一、Vue2 核心知识点 1. Vue2 的双向绑定原理 Vue2 实现双向绑定主要依赖数据劫持与发布 - 订阅者模式。 利用Object.defineProperty方法对数据对象的属性进行劫持&#xff0c;为每个属性定义getter和setter。getter用于收集依赖&#xff0c;当视图中使用到该属性时&#xf…...

JDK安装超详细步骤

&#x1f525;【JDK安装超详细步骤】 文章目录 &#x1f525;【JDK安装超详细步骤】1. 卸载系统自带的旧版JDK2. 安装JDK113. 验证安装是否成功4. 常见问题4.1 执行java -version提示命令未找到&#xff1f; 1. 卸载系统自带的旧版JDK 查询已安装的OpenJDK包。 rpm -qa | gre…...

PHP中的ReflectionClass讲解【详细版】

快餐&#xff1a; ReflectionClass精简版 在PHP中&#xff0c;ReflectionClass是一个功能强大的反射类&#xff0c;它就像是一个类的“X光透视镜”&#xff0c;能让我们在程序运行时深入了解类的内部结构和各种细节。 一、反射类的基本概念和重要性 反射是指在程序运行期间获…...

JAVA:Web安全防御

目录 一、Web安全基础与常见威胁 OWASP Top 10核心漏洞解析 • SQL注入&#xff08;SQLi&#xff09;、跨站脚本&#xff08;XSS&#xff09;、跨站请求伪造&#xff08;CSRF&#xff09; • 不安全的反序列化、敏感数据泄露 Java后端常见攻击场景 • 通过HttpServletRequest…...

39.剖析无处不在的数据结构

数据结构是计算机中组织和存储数据的特定方式&#xff0c;它的目的是方便且高效地对数据进行访问和修改。数据结构表述了数据之间的关系&#xff0c;以及操作数据的一系列方法。数据又是程序的基本单元&#xff0c;因此无论是哪种语言、哪种领域&#xff0c;都离不开数据结构&a…...

在离线 Ubuntu 环境下部署双 Neo4j 实例(Prod Dev)

在许多开发和生产场景中&#xff0c;我们可能需要在同一台服务器上运行多个独立的 Neo4j 数据库实例&#xff0c;例如一个用于生产环境 (Prod)&#xff0c;一个用于开发测试环境 (Dev)。本文将详细介绍如何在 离线 的 Ubuntu 服务器上&#xff0c;使用 tar.gz 包部署两个 Neo4j…...

【Spring】单例模式的创建方式(Bean解析)

在Java中&#xff0c;单例模式&#xff08;Singleton Pattern&#xff09;确保一个类只有一个实例&#xff0c;并提供全局访问点。以下是实现单例的五种常见方式&#xff1a;懒汉式、饿汉式、双重检查锁、静态内部类和枚举&#xff0c;包括代码示例和优缺点分析。 1. 懒汉式&am…...

关于hadoop和yarn的问题

1.hadoop的三大结构及各自的作用&#xff1f; HDFS&#xff08;Hadoop Distributed File System&#xff09;&#xff1a;分布式文件系统&#xff0c;负责海量数据的存储&#xff0c;具有高容错性和高吞吐量。 MapReduce&#xff1a;分布式计算框架&#xff0c;用于并行处理大…...

【飞渡科技数字孪生虚拟环境部署与集成教程 - CloudMaster实战指南】

飞渡科技数字孪生虚拟环境部署与集成教程 - CloudMaster实战指南 前言 本教程详细记录了飞渡科技的数字孪生平台CloudMaster的配置过程&#xff0c;以及如何将三维数字孪生场景集成到前端项目中。数字孪生技术能够在虚拟环境中精确复现物理实体的数据、特性和行为&#xff0c…...

计算机软考中级 知识点记忆——排序算法 冒泡排序-插入排序- 归并排序等 各种排序算法知识点整理

一、&#x1f4cc; 分类与比较 排序算法 最优时间复杂度 平均时间复杂度 最坏时间复杂度 空间复杂度 稳定性 应用场景与特点 算法策略 冒泡排序 O(n) O(n) O(n) O(1) 稳定 简单易实现&#xff0c;适用于小规模数据排序。 交换排序策略 插入排序 O(n) O(n) O…...

第十五届蓝桥杯 2024 C/C++组 下一次相遇

目录 题目&#xff1a; 题目描述&#xff1a; 题目链接&#xff1a; 思路&#xff1a; 自己的思路详解&#xff1a; 更好的思路详解&#xff1a; 代码&#xff1a; 自己的思路代码详解&#xff1a; 更好的思路代码详解&#xff1a; 题目&#xff1a; 题目描述&#xf…...

【2】CICD持续集成-k8s集群中安装Jenkins

一、背景&#xff1a; Jenkins是一款开源 CI&CD 系统&#xff0c;用于自动化各种任务&#xff0c;包括构建、测试和部署。 Jenkins官方提供了镜像&#xff1a;https://hub.docker.com/r/jenkins/jenkins 使用Deployment来部署这个镜像&#xff0c;会暴露两个端口&#xff…...

监控+日志=DevOps 运维的“千里眼”与“顺风耳”

监控+日志=DevOps 运维的“千里眼”与“顺风耳” 在 DevOps 体系中,监控和日志管理是不可或缺的运维基石。有人说,开发只管把代码写好,运维才是真正的“操盘手”,让系统稳定运行、不宕机、不崩溃。而要做到这一点,精准的监控与日志管理 是关键。 试想一下:如果没有监控…...

安卓的Launcher 在哪个环节进行启动

安卓Launcher在系统启动过程中的关键环节启动&#xff0c;具体如下&#xff1a; 内核启动&#xff1a;安卓设备开机后&#xff0c;首先由引导加载程序启动Linux内核。内核负责初始化硬件设备、建立内存管理机制、启动系统进程等基础工作&#xff0c;为整个系统的运行提供底层支…...

IDEA 创建Maven 工程(图文)

设置Maven 仓库 打开IDEA 开发工具&#xff0c;我的版本是2024.3.1&#xff08;每个版本的位置不一样&#xff09;。在【Customize】选项中&#xff0c;可以直接设置【语言】&#xff0c;在最下面选择【All setting】。 进入到熟悉的配置界面&#xff0c;选择配置的【setting…...

映射(Mapping)和地址(Address)

Addresses &#xff08;地址&#xff09; 以太坊区块链由 _ account _ (账户)组成&#xff0c;你可以把它想象成银行账户。一个帐户的余额是 以太 &#xff08;在以太坊区块链上使用的币种&#xff09;&#xff0c;你可以和其他帐户之间支付和接受以太币&#xff0c;就像你的银…...

通过C# 将Excel表格转换为图片(JPG/ PNG)

Excel 表格可能会因为不同设备、不同软件版本或字体缺失等问题&#xff0c;导致格式错乱或数据显示异常。转换为图片后&#xff0c;能确保数据的排版、格式和外观始终保持一致&#xff0c;无论在何种设备或平台上查看&#xff0c;都能呈现出固定的样式&#xff0c;避免了因环境…...

国产紫光同创FPGA实现SDI视频编解码+图像缩放,基于HSSTHP高速接口,提供2套工程源码和技术支持

目录 1、前言工程概述免责声明 2、相关方案推荐我已有的所有工程源码总目录----方便你快速找到自己喜欢的项目本博已有的 SDI 编解码方案本方案在Xilinx--Artix7系列FPGA上的应用本方案在Xilinx--Kintex系列FPGA上的应用本方案在Xilinx--Zynq系列FPGA上的应用本方案在Xilinx--U…...

day46—双指针-两数之和-输入有序数组(LeetCode-167)

题目描述 给你一个下标从 1 开始的整数数组 numbers &#xff0c;该数组已按 非递减顺序排列 &#xff0c;请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 numbers[index1] 和 numbers[index2] &#xff0c;则 1 < index1 < index2 &l…...

自动驾驶安全模型研究

自动驾驶安全模型研究 自动驾驶安全模型研究 自动驾驶安全模型研究1.自动驾驶安全模型概述2. 自动驾驶安全模型应用3. 自动驾驶安全模型介绍3.1 Last Point to Steer3.2 Safety Zone3.3 RSS (Responsibility-Sensitive Safety)3.4 SFF (Safety Force Field)3.5 FSM (Fuzzy Safe…...

【项目】基于MCP+Tabelstore架构实现知识库答疑系统

基于MCPTabelstore架构实现知识库答疑系统 整体流程设计&#xff08;一&#xff09;Agent 架构&#xff08;二&#xff09;知识库存储&#xff08;1&#xff09;向量数据库Tablestore&#xff08;2&#xff09;MCP Server &#xff08;三&#xff09;知识库构建&#xff08;1&a…...

当OCR遇上“幻觉”:如何让AI更靠谱地“看懂”文字?

在数字化的世界里&#xff0c;OCR&#xff08;光学字符识别&#xff09;技术就像给机器装上了“电子眼”。但当这项技术遇上大语言模型&#xff0c;一个意想不到的问题出现了——AI竟然会像人类一样产生“幻觉”。想象一下&#xff0c;当你拿着模糊的财务报表扫描件时&#xff…...

Docker用model.config部署及更新多个模型

步骤&#xff1a; 1、本地打包模型 2、编写model.config文件 3、使用 Docker 启动一个 TensorFlow Serving 容器 4、本地打包后的模型修改后&#xff0c;修改本地model.config&#xff0c;再同步更新容器的model.config 1、本地打包模型&#xff08;本地路径&#xff09; 2、…...

Linux kernel signal原理(下)- aarch64架构sigreturn流程

一、前言 在上篇中写到了linux中signal的处理流程&#xff0c;在do_signal信号处理的流程最后&#xff0c;会通过sigreturn再次回到线程现场&#xff0c;上篇文章中介绍了在X86_64架构下的实现&#xff0c;本篇中介绍下在aarch64架构下的实现原理。 二、sigaction系统调用 #i…...

matlab论文图一的地形区域图的球形展示Version_1

matlab论文图一的地形区域图的球形展示Version_1 图片 此图来源于&#xff1a; ![Jieqiong Zhou, Ziyin Wu, Dineng Zhao, Weibing Guan, Chao Zhu, Burg Flemming, Giant sand waves on the Taiwan Banks, southern Taiwan Strait: Distribution, morphometric relationship…...

发布一个npm包,更新包,删除包

发布一个npm包&#xff0c;更新包&#xff0c;删除包 如何将自己的项目 发布为一个 npm 包&#xff0c;并掌握 更新 和 删除 的操作流程。 &#x1f680; 一、发布一个 npm 包的完整流程 ✅ 1. 注册并登录 npm 账号 如果还没有账号&#xff0c;先注册&#xff1a; 官网注册&…...