使用Docker桌面開發環境功能開發SpringBoot - itnext
本文是Docker、VS Code、Docker Compose 和 Remote-Containers 外掛的良好組合的教程。
最近 docker 推出了一個名為 Dev Environments 的新功能,這是一個預覽功能,但對我來說非常有趣。這個新功能是 Docker、docker-compose 和 VS Code(帶有遠端容器外掛)的組合。
透過使用此功能,您可以輕鬆地從docker 卷(或您的本地目錄)內的專案 git 儲存庫構建快速開發環境,然後連線到使用 VS Code(遠端容器外掛)附加到該卷的建立的 docker 容器並開始編碼和執行該專案。您甚至可以將現有的 Docker 開發環境映像上傳到 Docker Hub 以與他人共享。
如果您只是想快速瀏覽一個專案或幫助在分支上工作的同事,則無需透過安裝 SDK、編譯器和其他開發工具來弄亂您的系統。
Docker DesktopDev Environments支援兩種型別的專案:
- 單容器開發環境
- 基於組合的開發環境
在本文中,我們將為Spring Boot 團隊官方 REST API 示例專案建立一個docker Dev environments演示。
準備您的機器以建立您的第一個 Docker 開發環境
- 首先,你需要安裝Docker Desktop和VS Code,然後你需要在 VS Code 中安裝Remote-Containers 外掛。
- 接下來,執行 Docker 桌面並透過單擊Whale iconmacOS 選單欄(或 Windows 系統托盤)中的進入儀表板,然後單擊Dashboard子選單。
- 最後,您應該單擊Dev Environemnts位於左窗格中的 並檢視您的Docker Dev Environments.
如何建立 Docker 開發環境?
在 Docker Desktop Dashboard 的 Dev Environment 窗格中,按 Create New Environment 按鈕,您將有 3 個選擇來建立新的 Dev Environment:
- 遠端 Git 儲存庫:從 Docker 卷內的遠端 git 儲存庫(可能是該儲存庫的一個分支)克隆專案程式碼,使用建立的卷建立一個 docker 容器並開啟 VS 程式碼,然後使用遠端容器外掛。
- 本地資料夾:與上一個類似,但您的原始碼位於已建立的 docker 容器內的本地目錄中。您的原始碼將在 docker 容器和您的本地目錄之間同步,因此與之前的方法相比,它可能會有點慢。
- 現有開發環境:您可以透過將現有開發環境釋出為 docker 映像來重用它們,然後透過這種方法重用它們。
為 Spring Boot 專案建立 Docker 開發環境
按 Create New Environment 按鈕,在第一個選項卡(Remote Git Repository)中,輸入Spring Boot 團隊提供的官方 REST API 示例專案的 URL :https://github.com/spring-guides/gs-rest-service
按下Create按鈕後,開始建立您的第一個開發環境的過程。Docker 開發環境執行以下步驟來建立您的第一個開發環境:
- 根據您專案的程式語言和技術拉取一個 docker 映象,在這種情況下,docker pulldocker/dev-environments-java:stable-1並基於它建立一個容器和所需的卷。
- 將給定 git 儲存庫中的原始碼克隆到這些建立的卷之一中。
- 最終 docker 桌面將為您開啟一個 VS 程式碼視窗,該視窗使用Remote-Containers 外掛連線到建立的 docker 容器。
在開發環境中開發和執行專案
如果您只想執行此示例 REST API,則無需在容器中的 VS Code 或 JDK 中安裝任何外掛。Dev Environment 建立的 Docker 容器有 JDK 和SDKMAN!,SDKMAN的存在!如果您想安裝其他 SDK 和工具(例如 Maven、Scala 或 Kotlin),則非常有用。
因此,您只需要進入complete專案中的目錄並從 VS Code 終端執行此命令:
cd complete ./mvnw spring-boot:run |
對於 VS Code 中的 Java 和 Spring Boot 開發,您有兩個選擇:
於 VS Code 和Remote-Containers 外掛的有趣之處在於,當你連線到這個容器時,安裝的外掛才可用。
現在您可以rest-service-complete使用 Spring Boot Dashboard執行(或除錯)專案,只需單擊執行(或除錯)按鈕(也許您需要轉到終端並按下Ctrl + C以停止先前執行的例項)。
總結
像所有工具和技術一樣,Docker Desktop 中引入的這個新功能也有一些優點和缺點,但總的來說,我喜歡這個功能,作為下面列表中的最終結論,我試圖提到它的優點和缺點Docker 開發環境功能。
優勢:
- 將開發環境與主機作業系統完全隔離
- 良好的效能
- 在 VS Code 中為每個專案安裝所需的外掛
- 可重現的開發環境以實現更好的團隊合作
- 減少向團隊新增新開發人員的入職時間
缺點:
- 尚不支援 Intellij Idea
- 如果在開發過程中,Dev 環境容器崩潰,那麼您的程式碼將丟失!
- 免費計劃中不提供共享開發環境
相關文章
- 使用 Docker 搭建本地開發環境!Docker開發環境
- 使用 PhpStorm + Docker 搭建開發環境PHPORMDocker開發環境
- Docker配置PHP開發環境DockerPHP開發環境
- 【Java】【SpringBoot】logback開發環境配置JavaSpring Boot開發環境
- idea開發之springboot環境搭建IdeaSpring Boot
- win 環境使用easyswoole利用docker進行開發Docker
- 自建 Laravel 的 Docker 開發環境LaravelDocker開發環境
- VSCode + Docker 的 PHP 開發環境VSCodeDockerPHP開發環境
- docker搭建laravel開發環境lnmpDockerLaravel開發環境LNMP
- 用 Docker 搭建 Laravel 開發環境DockerLaravel開發環境
- Docker下的Nacos環境開發Docker
- 使用 Docker 開發 PHP 專案(五):生產環境DockerPHP
- 如何使用docker搭建一個全家桶開發環境Docker開發環境
- 從零開始搭建本地 Docker 開發環境Docker開發環境
- 用 Docker 構建 PHP 開發環境DockerPHP開發環境
- 快速搭建本地docker的開發環境Docker開發環境
- windows 10 配置 docker lnmp 開發環境WindowsDockerLNMP開發環境
- 基於Docker的LNMP開發環境DockerLNMP開發環境
- springboot3+vue3(十一)springboot多環境開發Spring BootVue
- emacs開發環境配置(4)——rust開發環境Mac開發環境Rust
- 用 Docker 製作的 Laravel 開發環境DockerLaravel開發環境
- 用docker安裝laravel的開發環境DockerLaravel開發環境
- _002_SpringBoot_SpringBoot四大核心與開發環境Spring Boot開發環境
- Windows10系統下使用Docker搭建ClickHouse開發環境WindowsDocker開發環境
- 自己擼一個 LaraDock(使用 Docker LNMP 部署 PHP 開發環境)DockerLNMPPHP開發環境
- 使用webpack搭建react開發環境WebReact開發環境
- 使用 Rainbond 搭建本地開發環境AI開發環境
- Flutter開發入門之開發環境搭建(VSCode搭建Flutter開發環境)Flutter開發環境VSCode
- Docker 學習筆記(第七集:使用 docker 搭建 php 開發環境)Docker筆記PHP開發環境
- Docker 構建統一的前端開發環境Docker前端開發環境
- 基於 docker 開發環境下-配置 PHPStorm xdebugDocker開發環境PHPORM
- 如何在 docker for win 上搭建 Laravel 開發環境DockerLaravel開發環境
- 如何構建基於 docker 的開發環境Docker開發環境
- 一、開發環境開發環境
- 開發環境配置開發環境
- PHP開發環境PHP開發環境
- window下使用nw.js開發桌面應用程式環境的搭建JS
- Weex開發之路(一):開發環境搭建開發環境