10分钟学会Docker的安装和使用

news/2024/9/11 3:46:49/ 标签: docker

Docker 是一个用于开发、发布和运行应用程序的开源平台。它通过提供轻量级的容器技术,使得应用程序可以在任何环境中一致地运行。以下是快速学会Docker的安装和使用的步骤。

1. 安装Docker
在Windows上安装
  1. 下载Docker Desktop:

    • 访问Docker官网下载适用于Windows的Docker Desktop。
  2. 安装Docker Desktop:

    • 双击下载的安装包,按照安装向导完成安装。
  3. 启动Docker Desktop:

    • 安装完成后,启动Docker Desktop,确保其运行。如果弹出Windows的WSL 2要求,按照提示安装。
  4. 验证安装:

    • 打开命令提示符(CMD)或PowerShell,输入以下命令,检查Docker是否正确安装:
       bash 

      复制代码

      docker --version

    • 如果显示Docker版本信息,则安装成功。
在MacOS上安装
  1. 下载Docker Desktop:

    • 访问Docker官网下载适用于MacOS的Docker Desktop。
  2. 安装Docker Desktop:

    • 打开下载的.dmg文件,将Docker拖入Applications文件夹。
  3. 启动Docker Desktop:

    • 双击应用程序文件夹中的Docker图标启动。
  4. 验证安装:

    • 打开终端,输入以下命令:
       bash 

      复制代码

      docker --version

    • 如果显示Docker版本信息,则安装成功。
在Linux上安装(以Ubuntu为例)
  1. 更新软件包列表并安装依赖:

     bash 

    复制代码

    sudo apt-get update sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

  2. 添加Docker的GPG密钥和官方仓库:

     bash 

    复制代码

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

  3. 安装Docker Engine:

     bash 

    复制代码

    sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io

  4. 验证安装:

     bash 

    复制代码

    docker --version

    • 如果显示Docker版本信息,则安装成功。
2. 使用Docker
1. 拉取一个Docker镜像

Docker镜像是一个轻量级的、独立的、可执行的软件包,包含运行某个应用程序所需要的一切。我们可以从Docker Hub拉取公共的镜像。

 

bash

复制代码

docker pull hello-world

2. 运行一个Docker容器

容器是运行中的Docker镜像。让我们运行刚刚拉取的hello-world镜像。

 

bash

复制代码

docker run hello-world

如果看到以下输出,说明Docker已正确安装且运行正常:

 

text

复制代码

Hello from Docker! This message shows that your installation appears to be working correctly. ...

3. 查看正在运行的容器

你可以使用以下命令查看当前正在运行的容器:

 

bash

复制代码

docker ps

要查看所有容器(包括停止的容器),使用:

 

bash

复制代码

docker ps -a

4. 停止和删除容器

使用docker stop命令停止一个运行中的容器:

 

bash

复制代码

docker stop <container_id>

使用docker rm命令删除一个停止的容器:

 

bash

复制代码

docker rm <container_id>

5. 创建和运行一个简单的Web服务器

让我们用Docker创建并运行一个简单的Nginx Web服务器:

 

bash

复制代码

docker run -d -p 8080:80 nginx

这会从Docker Hub上拉取Nginx镜像,并在后台运行一个容器,将本地主机的8080端口映射到容器的80端口。

打开浏览器并访问http://localhost:8080,你会看到Nginx的欢迎页面,这表示你的Nginx服务器已经在Docker容器中成功运行。

6. 清理资源

使用以下命令删除所有停止的容器:

 

bash

复制代码

docker container prune

删除未使用的镜像:

 

bash

复制代码

docker image prune

通过以上步骤,你已经掌握了Docker的基本安装和使用方法,可以开始探索更多高级功能和用例。Docker的强大之处在于它的灵活性和可移植性,让应用程序开发和部署变得更加高效和一致。

4o


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

相关文章

Java->双击Window批处理程序动态切换Java版本

JDK8 echo off chcp 65001 >nul :: 设置控制台编码为UTF-8&#xff0c;避免中文乱码:: 检查是否以管理员身份运行 openfiles >nul 2>&1 if %errorlevel% neq 0 (echo 请求管理员权限...powershell -Command "Start-Process cmd -ArgumentList /c %~fnx0 -Ve…

13.1 Python 正则表达式基础

欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;欢迎订阅相关专栏&#xff1a; 工&#x1f497;重&#x1f497;hao&#x1f497;&#xff1a;野老杂谈 ⭐️ 全网最全IT互联网公司面试宝典&#xff1a;收集整理全网各大IT互联网公司技术、项目、HR面试真题.…

苹果发布 AirPods Pro 2 测试版固件 搭配iOS 18新特性

苹果今天发布了AirPods Pro 2 的第三个测试版固件&#xff0c;包括 Lightning 和 USB-C 两个版本。更新后的固件版本号为 7A5266c&#xff0c;高于 7A5244b&#xff0c;目前可供开发者使用。这是苹果公司自 6 月份宣布 AirPods Pro 2 新功能以来发布的第三个固件更新。 作为iOS…

git拉取后,代码不见了,没有冲突覆盖,且,没有删除,看我是怎么找回的

git拉取后&#xff0c;代码不见了&#xff0c;没有冲突覆盖&#xff0c;且&#xff0c;没有删除 重点提醒 当你的代码丢失时&#xff0c;不要惊慌&#xff0c;首先尝试使用本地的历史记录和远程仓库来找回代码。如果这些方法不起作用&#xff0c;你可以考虑其他的救援工具或寻…

搭建高可用OpenStack(Queen版)集群(十)之部署分布式存储Ceph

一、Ceph知识点学习 Ceph知识点学习&#xff1a;https://www.cnblogs.com/happy-king/p/9207509.html 二、部署分布式存储Ceph 一&#xff09;设置yum源 在全部控制与计算节点设置epel与ceph yum源 epel源&#xff1a;repo安装包下载_开源镜像站-阿里云 ceph源&#xff1a;cep…

在亚马逊云科技上利用生成式AI开发用户广告营销平台

项目简介&#xff1a; 小李哥将继续每天介绍一个基于亚马逊云科技AWS云计算平台的全球前沿AI技术解决方案&#xff0c;帮助大家快速了解国际上最热门的云计算平台亚马逊云科技AWS AI最佳实践&#xff0c;并应用到自己的日常工作里。 本次介绍的是如何利用亚马逊云科技大模型托…

windows 版本Jenkins的Jenkinsfile中共享变量

场景 jenkins部署在windows服务器上的&#xff0c;需要在Jenkinsfile中获取命令执行的结果存入一个变量&#xff0c;然后在后续的执行中使用此变量 一开始想的是定义一个环境变量&#xff0c;如下所示&#xff0c; pipeline {agent anystages {stage(test) {steps {bat for /…

【网络】传输层TCP协议的报头和传输机制

目录 引言 报头和有效载荷 确认应答机制 超时重传机制 排序和去重 连接管理机制 个人主页&#xff1a;东洛的克莱斯韦克-CSDN博客 引言 TCP是传输层协议&#xff0c;全称传输控制协议。TCP报头中有丰富的字段以及协议本身会制定完善的策略来保证网络传输的可靠性。 TCP…

VIMA: General Robot Manipulation with Multimodal Prompts

发表时间&#xff1a;arXiv 2024年5月15日 论文链接&#xff1a;https://arxiv.org/pdf/2309.11499 作者单位&#xff1a;Xi’an Jiaotong University Motivation&#xff1a;机器人技术中的任务规范有多种形式&#xff0c;例如模仿一次性演示、遵循语言说明和达到目标。它们…

运动耳机哪个品牌好用?五款质量一流品牌推荐!

运动耳机无疑是运动爱好者的绝佳伴侣&#xff0c;让每一次挥汗如雨的瞬间都伴随着无与伦比的音乐盛宴与舒适的佩戴感受。特别是对于跑步爱好者而言&#xff0c;一款优秀的运动耳机更是不可或缺的装备。然而&#xff0c;市场上的运动耳机种类繁多&#xff0c;质量也千差万别&…

机器学习——逻辑回归(学习笔记)

目录 一、认识逻辑回归 二、二元逻辑回归&#xff08;LogisticRegression&#xff09; 1. 损失函数 2. 正则化 3. 梯度下降 4. 二元回归与多元回归 三、sklearn中的逻辑回归&#xff08;自查&#xff09; 1. 分类 2. 参数列表 3. 属性列表 4. 接口列表 四、逻辑回归…

怎么在网站底部添加站点地图?

在优化网站 SEO 时&#xff0c;站点地图&#xff08;Sitemap&#xff09;是一个非常重要的工具。它帮助搜索引擎更好地理解和抓取您的网站内容。幸运的是&#xff0c;从 WordPress 5.5 开始&#xff0c;WordPress 自带了站点地图生成功能&#xff0c;无需额外插件。下面将介绍如…

EPIC 数据库 Chronicles 的连接方式

EPIC 使用的是 IRIS 数据库&#xff0c;但是在 EPIC 内部&#xff0c;却有一个称为 Chronicles 的系统。 有关这个 Chronicles 的连接方式&#xff0c;请参考&#xff1a; Chronicles Chronicles 在 EPIC 内部被称为 DBMS&#xff0c;是 EPIC 的数据库管理系统。 我们可以认…

TDengine Cloud 助力智源未来,引领能源管理革新

在全球能源转型的大背景下&#xff0c;能源管理和储能技术的创新成为了各行业关注的焦点。随着能源需求的不断增加和对可再生能源的广泛应用&#xff0c;企业对高效、智能的能源管理解决方案的需求也在迅速增长。储能技术不仅能够平衡电力供应与需求&#xff0c;还能够在电网高…

如何高效记录并整理编程学习笔记?

如何高效记录并整理编程学习笔记&#xff1f; 笔记工具选择 1、Typora 轻量化&#xff0c;简单好用 2、 飞书云文档 手机电脑都可以看&#xff0c;随时同步笔记。 笔记结构设计 做好清晰的标题&#xff0c;按照知识去分类。 Java基础知识 开源框架 中间件 实践与复习策略 只…

10、java程序流程控制之二:分支语句(switch-case结构)、循环结构(for循环)(经典案例)

java程序流程控制之二&#xff1a; Ⅰ、分支语句&#xff1a;switch-case1、switch-case 分支结构&#xff1a;其一、描述&#xff1a;其二、代码为&#xff1a;其三、截图为&#xff1a; 2、switch-case 分支结构的案例1&#xff1a;判断是否合格其一、描述&#xff1a;其二、…

HC32F460 IIC访问总结

IC 总线由一根时钟线&#xff08; SCL&#xff09;&#xff0c;一根数据线&#xff08; SDA&#xff09;构成。所有的连接器件必须是漏 极开路输出。 SCL&#xff0c; SDA 线外接上拉电阻。电阻阻值取决于系统应用。 通常情况下&#xff0c;一个完整的通信过程包括下列 4 部分&…

人类的信仰从何而来?

原创 Kirill Nikitine 新发现科普书单 自人类诞生伊始&#xff0c;就不乏热衷于这个哲学基本问题的人士。基于近 15 个世纪以来多名伟大思想家发起的研究&#xff0c;科学家终于给出了答案。究其原因&#xff0c;人类学、神经学和文化因素促使人类拥有信仰。 在蒂姆・伯顿&…

执行start-dfs.sh后,datenode没有启动的最全解决办法(全网最全)

前言 在Hadoop中申请一个Flink的Session会话的时候出现了报错 报错内容 File /user/.flink/application_1723473994699_0002b/flink-table-api-java-uber-1.17.0.jar could only be written to 0 of the 1 minReplication nodes. There are 0 datanode(s) running and 0 node…

docker stop pause 区别

先说区别 &#x1f6d1; docker stop &#xff1a;通过发送 SIGTERM 信号来停止正在运行的容器&#xff0c;如果容器在宽限期后仍未停止&#xff0c;则发送 SIGKILL 信号。这将完全停止容器的进程。 ⏸️ docker pause &#xff1a;使用 cgroups 冻结器暂停正在运行的容器中的…