实战:如何在IDE中使用Docker?

实战:如何在IDE中使用Docker?

作者:黄帅翻译 2015-08-31 13:42:06

云计算 本篇博文是关于如何集成Docker到我们的IDE中。让我们有机会介绍一个Eclipse插件doclipser,可以在IDE中编辑、构建和运行Docker容器。

这是一个新颖的想法,在码农的IDE环境中,若是可以很方便地使用Docker,真是一件很有意思的事:对Dockerfile或者Compose YML文件进行语法高亮、自动补全、语法验证,甚至还可以直接在IDE中启动这个Docker容器来进行更深入的测试或者开发。让懒惰的程序员们可以更高效地利用时间,专注于解决应用本身的问题。有兴趣的小伙伴,可以搜搜有没有更好的可以分享分享,或者帮助社区写另一个优秀的工具出来。

这个博客帖子是关于如何集成Docker到我们的IDE中。让我们有机会介绍一个Eclipse插件doclipser,可以在IDE中编辑、构建和运行Docker容器。

Docker的开发环境

在深入Docker和IDE集成细节之前,让我们看看,为什么得要把Docker放进必需的开发工具列表中。

构建系统

首先,Docker能够使我们的构建环境具有便携、可重复以及隔离的特性。举个例子:你需要使用5.1版本的gcc工具构建一个C文件。 所需要做的就是运行以下命令(当然,这里假定你已经安装了Docker):

  1. docker run gcc:5.1 gcc -o helloworld helloword.c 

神奇的是,你可以在任何地方运行它,你不需要考虑库文件、冲突或者gcc的安装。只要它能在你的笔记本上跑起来,也就可以在集成服务器上运行了。

运行环境

同样适用于运行环境。如果你只想在tomcat 8上运行Java Web应用程序,可以只使用:

  1. docker run tomcat:8 -v HelloWorld.war:/usr/local/tomcat/webapps/Helloworld.war 

同样,你不用担心依赖性、平台配置或Linux发行版的差异,这些Docker都能搞定。

Docker和IDE

好吧,上面已经非常清楚地说明了,Docker对开发如此有用的原因。就像我们描述的,你可以使用喜欢的shell来执行这些命令。 问题是,开发者都是懒惰的。这意味着,如果我们在最喜欢的IDE中码字,就不希望跑到IDE外面来使用Docker。我们想直接从IDE中运行容器。

不幸的是,现在主要的IDE都不支持Docker。

所以,你是不是很想看到IDE中集成了Docker?

你想要在容器中运行IDE?

  1. docker run eclipse 

汗,这不是容器的使用方式。在容器里面运行图形化应用程序,还是太过复杂也缺少可移植性。

你想要从IDE中运行容器?

是哦!我们希望能看到支持Dockerfile和Compose YML文件,希望IDE构建系统和运行环境能在容器内跑。让我们来看看详细的需求:

Dockerfile的支持

Dockerfile支持应该带有语法高亮显示,自动补全(当按下Ctrl+SPACE键,dockerfile指令会自动弹出来)和语法验证(在执行docker build之前,IDE要能指出语法错误)

 

Compose YML文件的支持

更有意思的是对Compose YML文件的支持。这将允许定义容器间的关系,如Link和Volume,也可以从你的编辑器一次启动多个容器。真的很酷!

#p#

IDE构建系统

当然,你需要得到IDE中运行容器的支持。具体地,容器可以构建你的源文件。如果利用Docker多种语言特性,这可能变得更容易。

IDE运行环境

我们期待IDE的最后一项功能,应该是能够在Docker容器内部启动运行环境。

doclipser简介

根据上述四个功能,我们构建了doclipser,编辑Eclipse插件、构建和运行Docker容器。

doclipser支持Dockerfile:语法高亮显示,自动补全和语法验证。虽仍没有支持Docker Compose YML文件,但已经可以执行一些Docker的命令,来构建源文件或启动运行环境。

doclipser不是唯一的Docker Eclipse插件。这儿有一个非常好的Eclipse Docker工具集(http://tools.jboss.org/blog/2015-03-30-Eclipse_Docker_Tooling.html)(以下简称:EDT),由JBoss维护并且和Eclipse的Linux工具包一起分发。 即使它们都能使大家在IDE中使用Docker,doclipser和EDT还是两种不同的方法:

  • doclipser通过对Dockerfiles的支持,专注于编辑和运行容器,在未来的版本中,将提供对Docker Compose YML文件的支持。
  • EDT对Docker镜像和容器拥有更高级的管理方式,但缺乏对Dockerfiles的支持。

doclipser demo from Mario Loriedo on Vimeo.(http://www.56.com/u92/v_MTM3NzM3NzY5.html#fromoutpvid=MTM3NzM3NzY5)

  1. domeide.github.io 

Doclipser并不是将Docker集成到IDE的唯一的工具。我们正在建设一个GitHub的页面,收集所有已存在的工具:http://domeide.github.io

  1. 这里已包括:
  2. Sublime Docker(https://packagecontrol.io/packages/Docker%20Based%20Build%20Systems)
  3. IntelliJ IDEA 14.1(http://blog.jetbrains.com/idea/2015/03/docker-support-in-intellij-idea-14-1/)
  4.  Eclipse JBoss Tools(http://tools.jboss.org/blog/2015-03-30-Eclipse_Docker_Tooling.html)
  5. Visual Studio 2015 RC Tools for Docker预览版(https://visualstudiogallery.msdn.microsoft.com/6f638067-027d-4817-bcc7-aa94163338f0)

博文出处:http://www.dockone.io/article/464

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/273540.html<

(0)
管理的头像管理
上一篇2025-05-09 07:50
下一篇 2025-05-09 07:51

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注