Eclipse Mars 支持全新的 Docker 工具
目标
我们希望用一种简单的方式直接从 Eclipse 中启动/停止和部署 Docker 容器。
我们希望可以直接运行在三大主要的平台上:Windows、Linux、OS X。
我们希望不仅能与现有的 Docker 命令行工具共同工作,而且用于提供更好的概述和从可视角度更快更容易地访问常用的操作。
我们希望它和 Eclipse Mars 一起发布。
...而这些,就是我们现在所做的
这篇文章就是要告诉你它如何安装、主要的特性和未来的计划。
我从哪里能获得它
随着 Eclipse Mars 发布,你可以从 Eclipse 的更新网站上获得它,它叫做 Docker Tooling。
如果你想尝试最新最好的构建,你可以每晚使用 Linux Tools 项目在 http://download.eclipse.org/linuxtools/updates-docker-nightly/
上构建更新站点。
为了使用这个插件,假定 Docker 已经安装,你可以查看 Docker 安装指导来弄明白如何在各平台上进行安装。
视图和视角
一旦你装好了 Docker 工具,你可以访问三个新的视图:
-
Docker Explorer
一个树形视图列表,将 Docker 实例和所有镜像、容器相连
-
Docker Containers
一个列出了用于选择 Docker 连接的列表视图
-
Docker Images
一个列出所选的 Docker 连接可使用的图像的列表视图
了解这些最简单的方法是深入理解 Docker Tooling。
在上面的截屏中,Docker tooling 连接了一个本地正在运行的 Docker 守护进程,叫做 boot2docker。
连接
要配置这个,你可以在 Docker Explorer 视图上点击 Add Connection... 按钮。
这将会启动一个导航来侦测你的默认 Docker 连接的安装,这取决于你的操作系统。
在 Linux 中,它会使用标准的 Unix 套接字,如果是在 Windows 和 OS X 环境下,它会查找以下环境变量:DOCKER_HOST,
DOCKER_TLS_VERIFY
和 DOCKER_CERT_PATH
。
如果这些都是不可侦测的,你可以点击 Use custom connection settings 并提供连接信息。
当你连接上之后,你就可以开始使用 Docker 镜像。
个人镜像
要拉一个镜像,你需要用 Docker 镜像视图的 Pull Image。
在这里,我简单地拉了一个 JBoss/wildfly 镜像,http://hub.docker.com 中有很多可用的镜像。
运行
运行这个镜像最简单的方式就是,在 Docker Explorer 上右击这个镜像。
我最初过滤的列表中只显示与 wildfly 连接的镜像,然后右击选择 Run Image... 动作。
在此对话中,你也可以通过点击 Search... 在 Docker Hub 中查找其他镜像。
Docker 查找
在这个例子中,我只使用默认的配置,但是在 Run Image 导航中,你可以配端口、链接、环境变量等等。
通过默认的配置,我们可以通过互动性和 tty 模式让你在控制台和 Docker 容器互动(换句话说就是是否镜像要求输入)
当你点击 Finish,容器会在控制台中启动并展示输出,并且 Docker Container 视图会显示所用的端口。
在这里,端口 8080(Web 服务器)映射到了 Docker 守护进程的 32768 上。
为了展示这个,我需要访问 http://dockerhost:32768 来获得它。dockerhost
就是 Docker 守护进程的 IP。
构建
如果你有一个 Dockerfile,你可以通过 Image 视图的 hammer 图标来构建它。这将启动构建导航。
一旦构建,镜像会显示出来,并有可能在运行时使用。
性能
你可以通过各个部分查看性能:连接、镜像和容器,包括 docker inspect 所展示的树状视图。
未来
对于 Eclipse Mars,我们增加了这些基本的特性,你可以在每天的 Docker 使用中用上它们。
对于 Eclipse Mars SR1,我们会进行一些粗糙的边缘修复,例如“Run”和“Build”应该在内容菜单中可用而不仅仅是在视图菜单中可用。
Eclipse CDT 也开始支持通过 Docker 镜像为操作系统建立二进制文件。这个版本可以在 Windows 和 Mac 上运行, 但是会针对在多个不同的 Linux 架构的本地部署。此外,在 JBoss Tools 中,我们致力于 Docker 与 Eclipse 服务适配器更好的整合,以简化你的 web 应用到 Docker 容器的部署。你可以看到,服务器如何利用 docker volumes 和远程部署支持来部署 Docker tooling。
如果你有任何建议或者找到了任何 bugs,请在 Docker Linux 工具项目中打开它们。
祝好!
Max Rydahl Andersen
Via:jboss