问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

开发者可以使用Docker做什么

发布网友 发布时间:2022-04-22 08:31

我来回答

2个回答

热心网友 时间:2022-04-11 03:02

【编者的话】有些开发者可能还是不明白 Docker 对自己到底有多大的用处,因此翻译 Docker 个人用例 这篇文章中来介绍 Docker 在普通开发者开发过程中的用例。

Docker 如今赢得了许多关注,很多人觉得盛名之下其实难副,因为他们仍然搞不清 Docker 和普通开发者到底有什么关系。许多开发者觉得 Docker 离自己很远,Docker 是生产环境中的工具,和自己无关。我也是花了很长时间才想清楚作为普通开发人员如何在自己的开发中使用 Docker。坦率地说,我仍处在学习的过程中。

这篇文章提供了一个 Docker 用例列表,我希望它能更好地帮助你理解 Docker 并引发你的思考。本文只是描述 Docker 在普通开发者日常的应用,并不提供完整的解决方案。

在介绍用例之前,我希望你能先记住这句话:“Docker 是一个便携的应用容器”。你可以不知道 Docker 所说的的“便携式容器”到底是什么意思,但是你必须清楚 Docker 在日常中能带来非常大的效率提升。

当你需要在容器内运行自己的应用(当然可以是任何应用),Docker 都提供了一个基础系统镜像作为运行应用时的基础系统。也就是说,只要是 Linux 系统上的应用都可以运行在 Docker 中。

可以在 Docker 里面运行数据库吗?当然可以。
可以在 Docker 里面运行 Node.js 网站服务器吗?当然可以。
可以在 Docker 里面运行 API 服务器吗?当然可以。

Docker 并不在乎你的应用程序是什么、做什么,Docker 提供了一组应用打包、传输和部署的方法,以便你能更好地在容器内运行任何应用。

下面的例子我自己经常使用,当然你有更好的案例也可以分享给我。

尝试新软件
对开发者而言,每天会催生出的各式各样的新技术都需要尝试,然而开发者却不太可能为他们一一搭建好环境并进行测试。时间非常宝贵,正是得益于 Docker,让我们有可能在一条或者几条命令内就搭建完环境。Docker 有一个傻瓜化的获取软件的方法,Docker 后台会自动获得环境镜像并且运行环境。

并不仅仅是新技术环境搭建用得到 Docker。如果你想快速在你的笔记本上运行一个 MySQL 数据库,或者一个 Redis 消息队列,那么使用 Docker 便可以非常容易地做到。例如 Docker 只需要一条命令便可以运行 MySQL 数据库:docker run -d -p 3306:3306 tutum/mysql。

译者注:虽然使用命令也能非常快地安装 MySQL 数据库,但是当用到最新的技术或者非常复杂的技术时,使用 Docker 便会是个非常好的选择,例如 Gitlab,普通用户大概需要一天的时间去搭建 Gitlab 平台,而 Docker 则只需要一条命令。

进行演示
现在我经常需要在周末用自己开发的成果对客户活着别人做一两个演示。搭建演示环境的过程非常麻烦。现在我发现 Docker 已经成为我演示这些工具的最合理的方式。同时,对于客户来说,我可以直接将 Docker 镜像提供给他们,而不必去做任何环境配置的工作,工作的效果也会和在他们演示中所看到的一模一样,同时不必担心他们的环境配置会导致我们的产品无法运行。

避免“我机器上可以运行”
无论是上一篇介绍的企业部署 Docker 还是本文的个人 Docker 用例,都提到了这个情况。因为环境配置不同,很多人在开发中也会遇到这个情况,甚至开发的软件到了测试人员的机器上便不能运行。但这都不是重点。重点是,如果我们有一个可靠的、可分发的标准开发环境,那么我们的开发将不会像现在这么痛苦。Docker 便可以解决这个问题。Docker 镜像并不会因为环境的变化而不能运行,也不会在不同的电脑上有不同的运行结果。可以给测试人员提交含有应用的 Docker 镜像,这样便不再会发生“在我机器上是可以运行的”这种事情,很大程度上减轻了开发人员测试人员互相检查机器环境设置带来的时间成本。

另一个 Docker 可以发挥用处的地方是培训班。除了 Docker 容器的隔离性之外,更能体会到 Docker 优势的地方在于环境搭建。培训班的新手每个人都要在环境搭建上花费很多时间,但是如果在这里应用到 Docker 的话,那么我们只需要把标准的运行环境镜像分发下去,然后就可以开始上课了。使用 Docker 和使用虚拟机一样简单,但是 Docker 要更方便、更轻量级。同时,我们也可以告诉学员:“在培训的同时,我们还将学到当下最流行的技术——Docker”,这种双赢的结局,何乐而不为呢。

学习 Linux 脚本
当然这个原因看起来可能很奇怪,但是对不不熟悉 Linux 操作系统和 Shell 脚本的人来说,确实是一个好机会。即便本文并不是在讲 Linux,Linux 的重要度仍然不言而喻。如果你用的是 Windows,那么我给你一个建议:从云主机提供商那儿租用一台云主机:我推荐使用 CoreOS 系统的云主机。虽然这样并不会让你成为专业的 Linux 运维,但是可以让你快速地学到 Linux 基础知识,爱上命令行操作,并且慢慢开始熟悉和欣赏 Linux。

更好地利用资源
虚拟机的粒度是“虚拟出的机器”,而 Docker 的粒度则是“被*的应用”,相比较而言 Docker 的内存占用更少,更加轻量级。

对我来说这是 Docker 的一个优势:因为我经常在自己电脑中运行多个 Docker 应用,使用 Docker 比使用虚拟机更加简单,方便,粒度更细,也能持续地跟踪容器状态。

为微服务定制
如果你一直在关注科技新闻的话,那么你应该听说过“微服务(Microservices)”的概念。Docker 可以很好地和微服务结合起来。从概念上来说,一个微服务便是一个提供一整套应用程序的部分功能,Docker 便可以在开发、测试和部署过程中一直充当微服务的容器。甚至生产环境也可以在 Docker 中部署微服务。

在云服务提供商之间移植
大多数的云主机提供商已经全面支持 Docker。对于开发人员来说,这表示你可以很方便地切换云服务提供商,当然也可以很方便地将你本地的开发环境移动到云主机上,不需要本地上配置一次运行环境、在云主机上还配置一次运行环境。全面部署 Docker (Docker here and Docker there) 作为标准运行环境可以极大地减轻应用上线时的工作量和产生 BUG。

热心网友 时间:2022-04-11 04:20

Docker 这九个不同的应用场景,你都用到了吗?

Docker 可管理单台机器上的所有服务。使用文件夹挂载为每个基于数据的 Docker 镜像保留数据。9. 扩容 QPS(Scaling QPS)Docker 通过创建另一个容器轻松进行水平扩展。在遇到高峰流量时,Docker 可帮助解决问题,只需添加更多机器并增加负载均衡器背后的容器数量。

容器docker的作用是什么

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中。在用Docker的情况下,大家可以直接把项目发布在DocKer容器上面进行测试,当项目需要正式上线的时候,直接可以把做好的DocKer 镜像部署上去就行了,如果测试的好,就不必担心项目上正式版本的时候再出现什么问题。

docker就是容器吗?

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中。 Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 什么是docker...

docker的作用

Docker是一个开源的应用容器引擎,开发者可以整理打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。1、更高效的利用系统资源 由于容器不需要进行硬件虚拟以及运行完整操作系统等额外开销...

docker是干什么的

Docker是一个开源的平台,我们可以用Docker来开发、部署和运行我们的应用程序。Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。由于其...

使用Docker搭建一款实用的个人IT工具箱——it-tools

IT-Tools是一款全面功能的在线工具,专为开发者设计,旨在提供高效的工作流程。本篇内容将指导您如何使用Docker在个人服务器上部署IT-Tools,并通过cpolar内网穿透实现公网可直接访问,以便随时享受便捷的使用体验。首先,您需要安装Docker。若环境为CentOS7或已安装Docker,请跳过安装步骤。若未安装,可进行...

docker是干什么的

Docker适合用于微服务架构、持续集成/持续部署以及云原生应用的部署。通过Docker,可以轻松地创建、部署和管理多个容器,实现应用的快速扩展和资源的有效利用。此外,Docker还提供了强大的镜像仓库功能,方便开发者分享、管理和维护镜像。4. Docker的意义 Docker的出现极大地简化了应用软件的部署和管理流程。它使得...

什么是Docker

Docker是一个开源的应用容器引擎,它基于Go语言开发,并遵从Apache2.0开源协议。开发者可以利用Docker将应用及其依赖打包进可移植的容器中,这些容器可以在任何Linux机器上运行,实现了虚拟化。Docker容器采用沙箱机制,彼此之间完全隔离,确保了安全性。Docker自2013年初问世,目前有社区版(Community Edition, ...

开发者可以使用Docker做什么

可以在 Docker 里面运行 API 服务器吗?当然可以。Docker 并不在乎你的应用程序是什么、做什么,Docker 提供了一组应用打包、传输和部署的方法,以便你能更好地在容器内运行任何应用。下面的例子我自己经常使用,当然你有更好的案例也可以分享给我。尝试新软件 对开发者而言,每天会催生出的各式各样的...

...什么?它的优点与作用是什么?我们为什么使用docker?

Docker通过提供镜像、容器和仓库,实现了“一次封装,到处运行”的理念。镜像,类似于一个只读的程序,包含了运行时所需的文件和配置,是静态的。容器则是镜像的实例,运行应用程序,每个容器独立运行且互不影响。仓库则是存储镜像的地方,方便镜像的分发和管理。通过Docker,开发者可以创建镜像,上传到仓库...

闲聊什么时候可以使用 什么是开发者模式? 开发者选项怎么打开 开发者模式怎么开启 启用开发者选项 可以使用 宣布奖励事项可以使用 飞机上可以使用流量吗 新床多久可以使用
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
求这张图片的画师和p站ID 贱人是碰不完的,有些人说遇到贱人打死他,可没有几个能那样的人吧 魅族16相机启动异常 除青春痘小妙招 青春痘怎么治好 ...就长了青春痘,可能是因为我经常吃油炸的,比如薯条、鸡翅等热气的东西... 游戏私服是什么意思 湖北省武昌儿童医院怎么走 王者荣耀版本更新后信誉积分会恢复吗 如果一个游戏出了私服,那以前的官服 会面临停服问题吗? 私服的游戏和官服的有什么差别啊,是自己改吗?私服上的玩家数据谁来维护... 双重人格是一种病吗? 妙可蓝多对终止与蒙牛签署的股票协议发布了怎样的... 这是OPPO的哪款手机? 什么事网络买手 导致双重人格的原因是什么 政府股权投资适用什么办法? 怎么辨别手机的真假? 什么是数字电视啊???与普通的有什么区别啊?? 真我Q有没有100W 双重人格有哪些表现? 手持电视的概念 募资财务顾问合作协议(范本) 在设置里面怎么找到4G真我q 如何在本地搭建Docker-Registry 网上买手机靠谱吗? 电视电影的定义 双重人格有哪些症状? 公司企业名称后带个(筹)是什么意思? 什么是双重人格?它是怎样产生的? 唯图vt888手机电池在哪可以买到? 如何加入IPO 过realme Q2系列到底有没有冲击“双十一最香手机”的... 双重人格的人可怕之处是什么? 唯图vt89我手机开不了机 计步软件,用的什么原理? 和realme+真我q屏幕相同规格的手机类型 香港新股发行价如何确定? 世界上真的存在拥有双重人格的人吗 真我Q可以用65W快充吗? 手机计步软件有哪些? 不玩游戏买真我Q还是荣耀20青春版好? docker 是安装在本地还是服务器 羊头皮怎么做好吃? 热水器的开关怎么了撤卸? docker 搭建本地仓库有什么用 过年时家里都会买羊头,那么羊头应该怎么做才最好吃? 什么是混合资本债券 网上买手真的假的? 怎样煮羊头好吃? 如何把本地代码提交到docker 私有仓库