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

【Docker晋升记】No.2 --- Docker工具安装使用、命令行选项及构建、共享和运行容器化应用程序

文章目录

  • 前言
  • 🌟一、Docker工具安装
  • 🌟二、Docker命令行选项
    • 🌏2.1.docker run命令选项:
    • 🌏2.2.docker build命令选项:
    • 🌏2.3.docker images命令选项:
    • 🌏2.4.docker ps命令选项:
    • 🌏2.5.docker exec命令选项:
    • 🌏2.6.docker logs命令选项:
  • 🌟三、Docker在构建、共享和运行容器化应用程序时的主要步骤
  • 总结


前言

在这里插入图片描述

👧个人主页:@小沈YO.
😚小编介绍:欢迎来到我的乱七八糟小星球🌝
🔑本章内容:Docker工具安装使用、命令行选项及构建、共享和运行容器化应用程序时的主要步骤
记得 评论📝 +点赞👍 +收藏😽 +关注💞哦~


提示:以下是本篇文章正文内容,下面案例可供参考

🌟一、Docker工具安装

以下是在常见操作系统上安装Docker的基本步骤:

1. 在 Linux 上安装 Docker:
  1. 在 Linux 上安装 Docker:
  • 对于 Ubuntu,请运行以下命令:
sudo apt-get update
sudo apt-get install docker.io
  • 对于 CentOS,请运行以下命令:
sudo yum install docker
sudo systemctl start docker
sudo systemctl enable docker
2. 在 Windows 上安装 Docker:
  1. 在 Windows 上安装 Docker:

在 Windows 10 上,可以通过 Docker Desktop 来安装 Docker。您可以从 Docker 官方网站上下载 Docker Desktop 安装程序。

安装程序将引导您完成安装过程。安装完成后,您将获得一个名为 Docker Desktop 的应用程序,可以在其中管理和运行 Docker 容器。

3. 在 macOS 上安装 Docker:
  1. 在 macOS 上安装 Docker:

在 macOS 上,同样可以通过 Docker Desktop 来安装 Docker。也可以从 Docker 官方网站上下载 Docker Desktop 安装程序。

下载并运行安装程序,将 Docker Desktop 拖放到 “Applications” 文件夹中。然后打开 Docker Desktop 应用程序,它将在菜单栏中显示一个 Docker 图标,并在启动时安装和启动 Docker。

完成安装后,您可以在命令行终端或 Docker Desktop 应用程序中使用 Docker 命令来管理和运行 Docker 容器。请注意,某些操作可能需要使用管理员权限或加上 sudo 前缀(在 Linux 上)。

安装 Docker 后,您可能还需要配置 Docker 的一些额外设置,例如使用镜像加速器、配置网络设置等。这些设置可以通过编辑 Docker 配置文件或使用 Docker 命令行选项来完成。

🌟二、Docker命令行选项

Docker提供了丰富的命令行选项,用于管理和操作Docker容器和镜像。以下是一些常见的Docker命令行选项:

🌏2.1.docker run命令选项:

1. docker run命令选项:
  • docker run命令选项:
命令行功能
-d将容器在后台运行(以守护进程方式)
-it创建一个交互式的终端会话
-p指定容器与主机之间的端口映射
–name为容器指定一个自定义名称
-v挂载主机上的目录到容器中
–rm在容器退出后自动删除容器
-e设置容器的环境变量

🌏2.2.docker build命令选项:

2. docker build命令选项:
  • docker build命令选项:
命令行功能
-t为构建的镜像指定一个标签
-f指定使用的Dockerfile路径
–no-cache禁用缓存,强制重新构建镜像
–build-arg设置构建过程中的参数

🌏2.3.docker images命令选项:

3. docker images命令选项:
  • docker images命令选项:
命令行功能
-a显示所有镜像,包括中间层镜像
–filter根据条件过滤镜像
–no-trunc显示完整的镜像ID

🌏2.4.docker ps命令选项:

4. docker ps命令选项:
  • docker ps命令选项:
命令行功能
-a显示所有容器,包括已停止的容器
-q仅显示容器ID
–filter根据条件过滤容器

🌏2.5.docker exec命令选项:

5. docker exec命令选项:
  • docker exec命令选项:
命令行功能
-it创建一个交互式的终端会话
-d在后台运行命令
-u指定执行命令的用户

🌏2.6.docker logs命令选项:

6. docker logs命令选项:
  • docker logs命令选项:
命令行功能
-f实时跟踪容器的日志输出
–tail仅显示最后几行的日志
–since仅显示指定时间之后的日志
补充:可以使用docker --help或docker --help命令来获取更详细的命令选项列表和说明

🌟三、Docker在构建、共享和运行容器化应用程序时的主要步骤

Docker是一种开源的容器化平台,可以使用它来构建、共享和运行容器化的应用程序。以下是Docker在构建、共享和运行容器化应用程序时的主要步骤:

  • 编写Dockerfile: Dockerfile是一个文本文件,用于定义Docker镜像的构建步骤。您可以在Dockerfile中指定应用程序所需的基础镜像、安装依赖项、设置环境变量、配置容器等。通过运行docker build命令并指定Dockerfile的路径,可以构建自定义的Docker镜像。
  • 构建Docker镜像: 使用Dockerfile构建Docker镜像,在执行该命令时,Docker将按照Dockerfile中定义的步骤逐步构建镜像。在构建过程中,Docker会下载所需的基础镜像,并根据您的指示执行各种命令和操作,以生成最终的容器镜像。
  • 推送和共享镜像: 一旦您构建了Docker镜像,您可以将其推送到Docker仓库中,以便其他人共享和使用。Docker Hub是最常用的公共Docker仓库,您可以在此注册一个帐户,并使用docker push命令将镜像推送到Docker Hub上。
  • 拉取和运行镜像: 其他人可以从Docker仓库中拉取您共享的镜像,并在他们的本地环境中运行它。他们可以使用docker pull命令从仓库中拉取镜像,然后使用docker run命令来创建和运行容器。
  • 管理和监控容器: Docker还提供了一系列命令和工具,用于管理和监控容器的运行。您可以使用docker ps命令查看正在运行的容器,使用docker logs命令查看容器的日志输出,使用docker stop命令停止容器的运行,以及使用其他命令和工具来管理容器的网络、存储等方面。

Docker的容器化技术使应用程序的部署和交付更加简单和可靠。通过将应用程序及其依赖项打包到一个独立的容器中,可以消除环境差异性问题,并提供可重复和可移植的部署方式。此外,容器还具有轻量、快速启动和停止等特点,使应用程序的开发、测试和扩展变得更加高效。


总结

总之,使用Docker构建、共享和运行容器化的应用程序可以提供更加可靠、高效和便捷的开发和部署体验,使开发人员可以更专注于应用程序的开发和功能实现。

相关文章:

【Docker晋升记】No.2 --- Docker工具安装使用、命令行选项及构建、共享和运行容器化应用程序

文章目录 前言🌟一、Docker工具安装🌟二、Docker命令行选项🌏2.1.docker run命令选项:🌏2.2.docker build命令选项:🌏2.3.docker images命令选项:🌏2.4.docker ps命令选项…...

[OnWork.Tools]系列 00-目录

OnWork.Tools系列文章目录 OnWork.Tools系列 01-简介_末叶的博客-CSDN博客OnWork.Tools系列 02-安装_末叶的博客-CSDN博客OnWork.Tools系列 03-软件设置_末叶的博客-CSDN博客OnWork.Tools系列 04-快捷启动_末叶的博客-CSDN博客OnWork.Tools系列 05-系统工具_末叶的博客-CSDN博…...

Cadvisor+InfluxDB+Grafan+Prometheus(详解)

目录 一、CadvisorInfluxDBGrafan案例概述 (一)Cadvisor Cadvisor 产品特点: (二)InfluxDB InfluxDB应用场景: InfluxDB主要功能: InfluxDB主要特点: (三&#…...

AtcoderABC222场

A - Four DigitsA - Four Digits 题目大意 给定一个整数N,其范围在0到9999之间(包含边界)。在将N转换为四位数的字符串后,输出它。如果N的位数不足四位,则在前面添加必要数量的零。 思路分析 可以使用输出流的格式设…...

架构实践方法

一、识别复杂度 将主要的复杂度问题列出来,然后根据业务、技术、团队等综合情况进行排序,优先解决当前面临的最主要的复杂度问题。对于按照复杂度优先级解决的方式,存在一个普遍的担忧:如果按照优先级来解决复杂度,可…...

点淘的MCN机构申请详细入驻指南!

消费趋势的变化,来自消费人群的变化。 后疫情时代,经济复苏的反弹力度不足,人们开始怀疑我们正从前几年的消费升级,跌入消费降级的时代,但这并不能准确概括消费市场的变化。 仔细翻看各大奢侈品集团的财报&#xff0…...

事务和事务的隔离级别

1.4.事务和事务的隔离级别 1.4.1.为什么需要事务 事务是数据库管理系统(DBMS)执行过程中的一个逻辑单位(不可再进行分割),由一个有限的数据库操作序列构成(多个DML语句,select语句不包含事务&…...

每日一题 34在排序数组中查找元素的第一个和最后一个位置(二分查找)

题目 给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。 示例 1&…...

Spring Boot Admin 环境搭建与基本使用

Spring Boot Admin 环境搭建与基本使用 一、Spring Boot Admin是什么二、提供了那些功能三、 使用Spring Boot Admin3.1搭建Spring Boot Admin服务pom文件yml配置文件启动类启动admin服务效果 3.2 common-apipom文件feignhystrix 3.3服务消费者pom文件yml配置文件启动类control…...

JVM之内存模型

1. Java内存模型 很多人将Java 内存结构与java 内存模型傻傻分不清,java 内存模型是 Java Memory Model(JMM)的意思。 简单的说,JMM 定义了一套在多线程读写共享数据时(成员变量、数组)时,对数据…...

音视频 vs2017配置FFmpeg

vs2017 ffmpeg4.2.1 一、首先我把FFmpeg整理了一下&#xff0c;放在C盘 二、新建空项目 三、添加main.cpp&#xff0c;将bin文件夹下dll文件拷贝到cpp目录下 #include<stdio.h> #include<iostream>extern "C" { #include "libavcodec/avcodec.h&…...

【项目管理】PMP备考宝典-第二章《环境》

第一节&#xff1a;概述 1.项目所处的组织环境 &#xff08;1&#xff09;事业环境因素&#xff08;EEFs&#xff09; 组织内部的事业环境因素&#xff1a; 企业都会有愿景、使命、价值观&#xff0c;这些决定了企业的发展方向。不忘初心&#xff0c;坚定地走自己的路&#…...

ELK 将数据流转换回常规索引

ELK 将数据流转换回常规索引 现象&#xff1a;创建索引模板是打开了数据流&#xff0c;导致不能创建常规索引&#xff0c;并且手动修改、删除索引模板失败 "reason" : "composable template [logs_template] with index patterns [new-pattern*], priority [2…...

jackson库收发json格式数据和ajax发送json格式的数据

一、jackson库收发json格式数据 jackson库是maven仓库中用来实现组织json数据功能的库。 json格式  json格式一个组织数据的字符文本格式&#xff0c;它用键值对的方式存贮数据&#xff0c;json数据都是有一对对键值对组成的&#xff0c;键只能是字符串&#xff0c;用双引号包…...

ubuntu安装和卸载CLion

安装 在https://www.jetbrains.com/clion/download/#sectionlinux下载相应版本的安装包&#xff0c;解压之后&#xff0c;找到解压文件夹中的bin文件夹运行./clion.sh 卸载 使用sudo rm -rf删除以下内容&#xff1b;并把刚刚解压的文件删掉 ~/.config/JetBrains ~/.local/s…...

Petrel解释二维浅地层数据

Petrel是斯伦贝谢开发的一款地质解释和建模软件&#xff0c;有点像地理信息系统的ArcGIS&#xff0c;主要用于数据分析和展示。它不是用来处理原始数据的&#xff0c;而是集成各种处理后的结果数据进行特征分析和目标拾取。当然&#xff0c;它也能读取原始数据&#xff0c;比如…...

分布式任务调度平台XXL-JOB使用

说明&#xff1a;分布式任务调度平台XXL-JOB&#xff0c;其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线&#xff0c;开箱即用&#xff08;官方语&#xff09;。 本文介绍使用XXL-JOB实现定时执行代码&#xff0c;可用于项目中…...

自考本科汉语言文学专业真的太难了吗

自考本科汉语言文学专业的难度和就业前景都需要综合考虑。目前&#xff0c;自考汉语言文学专业通过率是比较高的&#xff0c;与其他专业比较&#xff0c;难度会低一些&#xff0c;主要考验考生的记忆能力。 自学考试汉语言文学难度怎么样 本科自学考试汉语言文学难度还是比较简…...

STM32CubeMX之freeRTOS信号量

队列可以传输数据&#xff0c;任务之间和任务和中断之间&#xff0c;消息队列用来传数据&#xff0c;占用时间也长 但哦我们有时候只需要传递状态&#xff0c;只需要一个数值表示 如果我们屏幕按固定刷新&#xff0c;就会很消耗资源&#xff0c;如果我们数据变化了&#xff0…...

react-spring,一个react的动画库的使用

介绍 React Spring 是一个 spring physics based animation library 用于 React。它可以轻松地在 React 中实现弹性、渐变等动画效果。 使用 安装依赖&#xff1a; 使用npm&#xff1a; npm install react-spring 使用yarn&#xff1a; yarn add react-spring 导入和使用&a…...

KubeSphere 容器平台高可用:环境搭建与可视化操作指南

Linux_k8s篇 欢迎来到Linux的世界&#xff0c;看笔记好好学多敲多打&#xff0c;每个人都是大神&#xff01; 题目&#xff1a;KubeSphere 容器平台高可用&#xff1a;环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...

内存分配函数malloc kmalloc vmalloc

内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...

java_网络服务相关_gateway_nacos_feign区别联系

1. spring-cloud-starter-gateway 作用&#xff1a;作为微服务架构的网关&#xff0c;统一入口&#xff0c;处理所有外部请求。 核心能力&#xff1a; 路由转发&#xff08;基于路径、服务名等&#xff09;过滤器&#xff08;鉴权、限流、日志、Header 处理&#xff09;支持负…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

微服务商城-商品微服务

数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

uniapp 实现腾讯云IM群文件上传下载功能

UniApp 集成腾讯云IM实现群文件上传下载功能全攻略 一、功能背景与技术选型 在团队协作场景中&#xff0c;群文件共享是核心需求之一。本文将介绍如何基于腾讯云IMCOS&#xff0c;在uniapp中实现&#xff1a; 群内文件上传/下载文件元数据管理下载进度追踪跨平台文件预览 二…...

xmind转换为markdown

文章目录 解锁思维导图新姿势&#xff1a;将XMind转为结构化Markdown 一、认识Xmind结构二、核心转换流程详解1.解压XMind文件&#xff08;ZIP处理&#xff09;2.解析JSON数据结构3&#xff1a;递归转换树形结构4&#xff1a;Markdown层级生成逻辑 三、完整代码 解锁思维导图新…...

uni-app学习笔记三十五--扩展组件的安装和使用

由于内置组件不能满足日常开发需要&#xff0c;uniapp官方也提供了众多的扩展组件供我们使用。由于不是内置组件&#xff0c;需要安装才能使用。 一、安装扩展插件 安装方法&#xff1a; 1.访问uniapp官方文档组件部分&#xff1a;组件使用的入门教程 | uni-app官网 点击左侧…...