簡體   English   中英

Dart lang應用程序與開放堆棧/ docker / vagrant

[英]Dart lang app with open stack / docker / vagrant

我是這些技術的新手(開放堆棧/ docker / vagrant),不確定我是否正確理解它們(很可能沒有),對我來說,我理解它就像有一個便攜式應用程序來運行它具有相同的開發配置確保所有開發團隊都有相同的設置,但不明白,開發后的內容,以及如何通過dart app從中獲益。

我的問題是:1。糾正我的理解2.我是否需要最終用戶在他的系統中安裝這些東西,並通過它們運行我的應用程序,就像在開發階段一樣? 3.我如何通過它們構建/開發/分發dart lang應用程序,可能是因為dart是新的,我在google搜索時找不到足夠的信息。

謝謝

Docker類似於虛擬機,如VM-Ware或Virtualbox,因為它在主機操作系統和在Docker容器中運行的操作系統之間創建了一個抽象層。 不同之處在於Docker不會模擬整個硬件。 缺點是Docker只能在Linux上運行,只有Linux可以在Docker中運行。 如果您的主機是Intel系統,則無法在容器內運行ARM Linux。 (理論上你可以在Docker中運行Virtualbox並運行Windows或其他操作系統)

使用Docker,您可以在部署時運行應用程序的相同環境中本地測試應用程序。

例如,當您創建要在Google Compute Engine中運行的應用程序時,您可以在Docker容器中本地安裝並測試它,然后將Docker容器作為整個單元部署到Google Compute Engine。 當部署的應用程序中存在錯誤時,您應該能夠在本地重現它,因為它只是1:1的副本。 由於操作系統或其他依賴項在部署環境中的安裝方式與在開發/測試環境中的安裝方式不同,因此無法引入任何錯誤。

Dockerfile是一組設置Docker容器的指令。 如果你想創建一個新的Docker容器(例如對於一個新的開發人員),你只需讓Docker處理Dockerfile並從中創建一個新的Docker容器。 這樣可以輕松創建新容器。 如果要將一個依賴項更新為較新版本,或者想要從環境中添加刪除組件,請更改Dockerfile並從中創建一個新容器。 這樣,您可以手動避免手動添加/刪除表單/現有容器,從而使不同開發人員/測試人員/部署的容器彼此不同。

我自己沒有使用過OpenStack,但是從網頁上看,它似乎提供了構建和管理自己的雲基礎架構的組件和工具。

我自己也沒有使用過Vagrant,但它似乎有助於自動完成許多與創建和管理VM-Ware,Virtualbox,Docker等虛擬機相關的任務。 例如,當您擁有一個服務器應用程序時,它可能包含許多組件,您不希望所有組件都在一個容器中運行,而是分成幾個容器。 數據庫的一個容器,一個用於Web服務器,一個用於后端應用程序(例如在Dart中創建),以及其他容器。 管理所有這些容器會變得很麻煩。 Vagrant有助於自動執行相關任務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM