网易首页 > 网易号 > 正文 申请入驻

Docker 入门:5 个简单步骤

0
分享至

每日分享最新,最流行的软件开发知识与最新行业趋势,希望大家能够一键三连,多多支持,跪求关注,点赞,留言。

Docker 是 DevOps 的代名词。什么是 Docker?如何学习 Docker?让我们在这篇文章中找出答案。

Docker 是 DevOps 的代名词。对我来说,Docker 是过去十年中排名前五的技术创新之一。

什么是 Docker?如何学习 Docker?让我们来了解一下。

目录
  1. 为什么我们需要 Docker?
  2. Docker 如何提供帮助?
  3. 什么是容器?
  4. 什么是 OCI?
  5. Docker 使用的一些重要术语是什么?
  6. 我如何学习 Docker?

6.1 在本地机器上安装 Docker

6.2 运行预建的 Docker 镜像

  1. 运行 Python 应用程序
  2. 运行 Java 应用程序
  3. 运行节点应用程序
  4. 概括

6.3 创建并运行自己的容器镜像

6.4 将你的容器镜像推送到 Docker Hub

6.5 了解运行容器的云服务

7. 后续步骤

1. 为什么我们需要 Docker?

过去十年流行的架构趋势之一是微服务。

在单体应用程序中,您拥有一个大型可部署单元,为您的应用程序的大多数功能提供服务。在微服务架构中,您将应用程序划分为更小的、可独立部署的构建块。

微服务架构为您提供了使用不同编程语言(Go、Java、Python、JavaScript 等)创新和构建应用程序的灵活性。然而,灵活性是有代价的。部署和操作变得更加复杂。

我们如何以相同的方式部署以不同语言构建的应用程序和服务?我们怎样才能有一种方法来为不同的服务和应用程序实现可观察性(日志、指标、跟踪等)?

进入Docker容器

2. Docker 如何提供帮助?

当你使用 Docker 时,你会为每个微服务构建一个单独的Docker 镜像

每个 Docker 映像都包含运行微服务实例所需的一切

  1. 操作系统
  2. 应用程序运行时(JDK 或 Python 或 NodeJS)
  3. 申请代码
  4. 应用程序依赖项

您可以在任何基础设施上以相同的方式(使用相同的流程)部署和运行此 Docker 映像:您的本地计算机、公司数据中心和云(AWS、Azure 或 Google Cloud)中。

Docker 简化开发如下:

  1. 您可以在任何地方运行 Docker 映像:在本地机器或测试机器上。
  2. 您可以将数据库和队列(MySQL、Kafka 等)作为 Docker 容器运行,而无需将它们安装在本地计算机上。

Docker 简化操作如下:

  1. 您以相同的方式部署所有微服务。
  2. 您可以以相同的方式为所有微服务实现可观察性(日志、指标、跟踪......)
3. 什么是容器?

一开始,Docker 回答了两个重要的问题:

  1. 如何构建 Docker 映像?
    • 例如,我们可以在DockerfileDocker 镜像中指定指令并创建一个镜像。
  2. 如何运行 Docker 映像?
    • Docker 提供了一个 Docker 运行时。安装一次,你就可以运行任何 Docker 镜像。

Docker 映像的运行实例称为容器。您可能有多个正在运行的微服务实例。每个实例都是一个容器。

4:什么是OCI?

Open Container Initiative (OCI) 的目标是围绕容器格式(即 Docker Image)和运行时(即 Docker Runtime)创建开放的行业标准。

现在考虑它的最简单方法是:

  1. OCI 提供接口。
  2. Docker 是一个实现。
5:Docker 使用的一些重要术语是什么?

  1. Docker Image:代表应用程序(或软件)特定版本的包
    • 包含您的应用所需的一切(操作系统、软件、代码、依赖项)
  2. Docker 容器:Docker 镜像的运行时实例
  3. Docker Registry : 一个存储 Docker 镜像的地方
  4. Docker Hub:托管 Docker 映像的注册表
  5. Docker Repository:特定应用程序的一组 Docker 镜像(标签用于区分不同的镜像)
  6. Dockerfile : 包含创建 Docker 映像说明的文本文件
6:如何学习 Docker?

按照这 五个简单的步骤开始使用 Docker。

6.1 在本地机器上安装 Docker

您可以在官方 Docker 文档中找到为您的特定操作系统 安装 Docker Engine的说明。

6.2:运行预建的 Docker 镜像
运行 Python 应用程序

使用此命令启动应用程序:

docker container run -d -p 5000:5000 in28min/hello-world-python:0.0.1.RELEASE

您可以通过 http://localhost:5000 访问正在运行的应用程序。

您可以使用以下命令序列终止正在运行的容器:

docker container list docker container stop <>

运行 Java 应用程序

使用此命令启动应用程序:

docker container run -d -p 5000:5000 in28min/hello-world-java:0.0.1.RELEASE

您可以通过 http://localhost:5000 访问正在运行的应用程序。

运行节点应用程序

使用此命令启动应用程序:

docker container run -d -p 5000:5000 in28min/hello-world-nodejs:0.0.1.RELEASE

您可以通过 http://localhost:5000 访问正在运行的应用程序。

概括

您可以以相同的方式为使用不同语言构建的不同微服务运行容器。

6.3 创建并运行自己的容器镜像

请参阅此 Node.js 应用程序的源代码。以下是重要文件:

  1. Dockerfile- 创建 Docker 镜像的说明
  2. index.js- REST API 代码
  3. package.json- 你的依赖

让我们更详细地看一下 Dockerfile:

FROM node:8.16.1-alpine WORKDIR /app COPY . /app RUN npm install EXPOSE 5000 CMD node index.js

Dockerfile 包含创建 Docker 映像的说明。

  1. FROM- 设置基本图像
  2. WORKDIR- 设置工作目录
  3. RUN- 执行命令
  4. EXPOSE- 通知 Docker 容器在运行时监听的端口
  5. COPY- 将新文件或目录复制到图像中
  6. CMD- 执行容器的默认命令

以下一组说明可帮助您创建 Docker 映像。

  1. cd进入包含Dockerfile
cd ../hello-world-nodejs/

  1. 构建 Docker 映像。in28min/hello-world-nodejs:0.0.2.RELEASE是对 Docker 映像的完整引用。in28min/hello-world-nodejs称为存储库名称。0.0.2.RELEASE称为标签。
docker build -t in28min/hello-world-nodejs:0.0.2.RELEASE .

  1. 构建 Docker 映像后,您可以在本地计算机上运行它。
docker container run -d -p 5000:5000 in28min/hello-world-nodejs:0.0.2.RELEASE

祝贺您成功构建和运行您的第一个 Docker 映像。

6.4 将你的容器镜像推送到 Docker Hub

如果你想在其他机器上使用你的 Docker 镜像或者你想将它部署到云中,你需要将它推送到一个 Docker 注册表。流行的 Docker 注册表之一是 Docker Hub。

您可以创建一个帐户并使用以下方法登录:

docker login

连接到 Docker Hub 后,您就可以推送 Docker 映像了。(替换«YOUR_DOCKER_HUB_ID»为您的 Docker Hub ID)。

docker build -t <>/hello-world-nodejs:0.0.2.RELEASE . docker push <>/hello-world-nodejs:0.0.2.RELEASE

您现在可以转到您朋友的笔记本电脑并运行您的 Docker 映像。

docker container run -d -p 5000:5000 <>/hello-world-nodejs:0.0.2.RELEASE

6.5:了解运行容器的云服务

您可以在每个云中使用多种选项来运行 Docker 映像。

这是一个快速的总结:

  1. AWS:AWS Elastic Beanstalk
  2. GCP:谷歌应用引擎和谷歌云运行
  3. Azure:Azure 应用服务

此外,您可以使用容器编排解决方案。现在,让我们不要担心他们!

7:接下来的步骤

以下是一些建议的后续步骤,以继续您的旅程:

  1. 保护您的 Docker 映像
  2. 使用 Docker 运行微服务
  3. 了解 Docker 撰写
  4. 了解 Kubernetes

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
买淀粉肠的学生,抢钥匙的校长,撒谎的通报

买淀粉肠的学生,抢钥匙的校长,撒谎的通报

空瓶子
2025-11-04 18:18:24
贵阳地铁发布严正声明

贵阳地铁发布严正声明

贵阳网
2025-11-04 09:36:59
"不欢迎中国人",德韩挂满中文标语,中国游客被区别对待,谁还去

"不欢迎中国人",德韩挂满中文标语,中国游客被区别对待,谁还去

南权先生
2025-10-08 17:00:03
上官正义为什么不受欢迎?

上官正义为什么不受欢迎?

上峰视点
2025-11-03 09:34:58
回顾探花大神:害人害己,多位女主被亲戚认出当场“社死”

回顾探花大神:害人害己,多位女主被亲戚认出当场“社死”

就一点
2025-10-09 12:19:42
河头老街曝大瓜,艺术团团长PUA员工,提供8000元选妃服务

河头老街曝大瓜,艺术团团长PUA员工,提供8000元选妃服务

社会酱
2025-11-04 17:20:11
失散的双胞胎兄妹?“史上最相似夫妻”被网友建议查下DNA,当事人:刚认识时不像,后来越长越像

失散的双胞胎兄妹?“史上最相似夫妻”被网友建议查下DNA,当事人:刚认识时不像,后来越长越像

鲁中晨报
2025-11-04 21:03:11
因为攻击郑智化,多个大V被封

因为攻击郑智化,多个大V被封

燕梳楼频道
2025-11-04 13:00:41
泰州苏超夺冠后,百度地图真的变了

泰州苏超夺冠后,百度地图真的变了

鲁中晨报
2025-11-04 13:55:03
被说“没必要建这么大”的清河站,它成北京北部枢纽的好处

被说“没必要建这么大”的清河站,它成北京北部枢纽的好处

旭芯怡
2025-11-03 22:44:41
雷军口碑翻车,不是营销过猛,是资本贪婪藏不住了

雷军口碑翻车,不是营销过猛,是资本贪婪藏不住了

流苏晚晴
2025-10-26 21:06:21
11月4日起,部分退休人员将迎养老金二次核算,补发1000难不难?

11月4日起,部分退休人员将迎养老金二次核算,补发1000难不难?

云鹏叙事
2025-11-04 09:25:05
人民日报“点名”,揭开全红婵真实处境,陈芋汐一个字都没说错

人民日报“点名”,揭开全红婵真实处境,陈芋汐一个字都没说错

君笙的拂兮
2025-11-04 09:43:27
看到开拓者替补中锋罗威的高效表现,中国球迷悬着的心终于放下了

看到开拓者替补中锋罗威的高效表现,中国球迷悬着的心终于放下了

大眼瞄世界
2025-11-04 23:28:15
郑丽文不装了?国台办回应武统后,郑丽文宣称:绝不放弃武力保台

郑丽文不装了?国台办回应武统后,郑丽文宣称:绝不放弃武力保台

谛听骨语本尊
2025-11-04 13:16:52
国锦赛今日赛程出炉:赵心童与斯佳辉猛对猛,丁俊晖与墨菲硬碰硬

国锦赛今日赛程出炉:赵心童与斯佳辉猛对猛,丁俊晖与墨菲硬碰硬

老高说体育
2025-11-05 10:24:53
中国驻英国使馆发言人就英媒报道称中方阻止英高校开展涉疆研究事答记者问

中国驻英国使馆发言人就英媒报道称中方阻止英高校开展涉疆研究事答记者问

环球网资讯
2025-11-05 09:58:15
乌鲁木齐地铁2号线通了,换乘远了,枢纽没连上

乌鲁木齐地铁2号线通了,换乘远了,枢纽没连上

西莫的艺术宫殿
2025-11-05 01:37:30
世人都说蒋碧薇当30年情妇不堪,女儿却说:我母亲更不堪

世人都说蒋碧薇当30年情妇不堪,女儿却说:我母亲更不堪

宅家伍菇凉
2025-11-04 16:04:27
跟中方打完交道后,特朗普想跟北京和睦相处,我大使划下4条红线

跟中方打完交道后,特朗普想跟北京和睦相处,我大使划下4条红线

叮当当科技
2025-11-05 09:43:04
2025-11-05 11:15:00
墨谈科技 incentive-icons
墨谈科技
业务数码玩家.无聊的博主
5343文章数 606关注度
往期回顾 全部

科技要闻

马斯克万亿美元薪酬投票在即,大股东反对

头条要闻

牛弹琴:美国上演极致"流氓外交" 让西方媒体目瞪口呆

头条要闻

牛弹琴:美国上演极致"流氓外交" 让西方媒体目瞪口呆

体育要闻

贝克汉姆获封爵士 曼联官方祝贺

娱乐要闻

王家卫事件再次升级,可怜了这些明星

财经要闻

飞天跌破1700元 茅台迎来最不确定的冬天

汽车要闻

9系大六座旗舰SUV又添一员 智己LS9预售33.69万起

态度原创

教育
时尚
旅游
手机
健康

教育要闻

在半圆中,C和D是三等分点,求阴影面积

2025羽绒服8大流行趋势,温暖时髦过冬天!

旅游要闻

不用跑远门!郑州市区这个公园就能免费看菊花展→

手机要闻

小米 REDMI Turbo 5 手机入网,升级 100W 有线快充

超声探头会加重受伤情况吗?

无障碍浏览 进入关怀版