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