今天給大家推薦一個軟件 —— "Docker for windows":
如果你對WSL2,還不熟悉,可以關注公眾號或小程序看看我之前推送過的兩篇文章。
Docker for windows
雖然WSL2提供了Windows的Linux子系統,但是它是一個獨立的終端運行,類似Windows的Cmd窗口:
當你在開發程序沒有雙屏的時候,非常不方便,所以,推薦大家在啟用WSL2之后,再安裝一下Docker for windows,這樣你就可以在自己的IDEA上完成所有操作,不用切屏了。
在安裝Docker for windwos之后,可以在Cmd上直接使用Docker的相關命令,不用再運行WSL2,然后在上面運行Docker,非常方便:
在Cmd可以運行Docker相關指令,那就是相當於可以像在Linux系統上執行任何指令一樣,為所欲為。
很多軟件都自帶終端,比如VsCode、IDEA、Eclipse等都有響應的終端,以IDEA為例,當可以在Cmd上運行Docker指令后,一個IDEA就可以讓你完成開發、部署等操作:
安裝 Docker for windows
Docker for windows 安裝和其他軟件安裝是一樣的,但是有個前提,就是電腦必須啟用虛擬化功能,在Windows沒有推出WSL2之前,你可能需要借助VBox或者專業版Windows的Hyper-V,但是有了WSL2之后,可以不用安裝任何虛擬機(如VBox)。
Docker需要虛擬化支持,在不安裝虛擬機的前提下WSL2有兩種選擇:
- WSL2:啟用Windows的Linux子系統
- Hyper-V:專業版Windows自帶的虛擬機
另外有一點很重要,就是Win10版本必須高於build 19041+。
這里以WLS2為例,說一下Docker for windows的安裝流程,首先需要在Windows的程序與功能中啟用Windows的Linux子系統和虛擬機功能平台:
然后下載Docker for windwos軟件,下載地址:
https://www.docker.com/products/docker-desktop
下載后,在安裝的時候,勾選安裝WSL2需要的組件:
默認Docker for windows的安裝位置為:
C:\Program Files\Docker
成功安裝后,你將看到下面這樣的界面:
運行 Docker 容器
成功安裝Docker for windows后,電腦右下角的系統托盤中會有一個“鯨魚裝着集裝箱”的圖標,你可以通過它打開Docker的管理界面。
你可以在命令行中運行Docker的Hello World程序來測試軟件是否成功安裝:
docker run -d -p 80:80 docker/getting-started
成功運行后,在軟件管理界面可以看到如下界面:
打開瀏覽器訪問 http://localhost
就可以訪問新手教程了:
IDEA 連接 Docker for windows
要讓IDEA能成功連接Docker進程,需要打開Docker 2375端口,開放遠程訪問,在設置里面,勾選:
Expose deamon on tcp://localhost:2375 without TLS
IDEA 安裝 Docker 插件:
然后創建Docker連接:
這樣就可以在IDEA管理Docker容器和鏡像了:
Docker + IDEA 開發到發布一步到位
這里以Vert.x的Hello World程序為例,采用jib-maven-plugin來構建本地鏡像,Vert.x的程序可以從下面的地址直接下載:
https://start.vertx.io/
下載完成后,在MainVerticle
中新增入口main函數:
public static void main(String[] args) {
Vertx vertx = Vertx.vertx();
vertx.deployVerticle(new MainVerticle());
}
配置jib-maven-plugin插件:
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>jib-maven-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<from>
<image>java:openjdk-8-jdk-alpine</image>
</from>
<image>${project.groupId}-${project.artifactId}:${project.version}</image>
</to>
<container>
<mainClass>${main.verticle}</mainClass>
</container>
</configuration>
</plugin>
構建本地鏡像:
mvn compile jib:dockerBuild
構建完成后,Docker里面就會多一個鏡像:
右鍵鏡像,創建對應的容器,配置如下:
然后點擊“run”,程序就可以跑起來了,也可以通過Attached Console來看程序的打印日志:
訪問http://localhost:8888
測試程序:
彩蛋:關注公眾號、或小程序,閱讀更多IT文章。