coding
筱進GG的gravatar頭像
筱進GG2019-09-07 20:29:40
傳統項目開發部署的流程是怎樣的?

前言

學習docker技術之前呢,我們通過引入一個大家都經歷過的開發場景,由此作為切入點,學習起來思路會很清晰明白。

 

傳統項目開發部署的基本流程

這里只簡單描述一下,項目發布的基本流程

 

  • 本地開發+測試,沒有問題的話,編譯打包發布到測試環境

  • 在測試環境中進行測試,測試完成后,發布到生產環境

  • 在生產環境中進行最后的測試,如果沒有問題,那么一切就OK了

 

存在什么問題?

我想100%的人都親身經歷過這樣的事情 —— 在自己本地測試都沒有問題,發布到測試環境、生產環境后,就出現問題了!搞得自己非常苦惱!非常糾結!到底是哪里出了問題呢?明明代碼什么的都一樣啊~

 

好吧,這里我就不仔細分析具體的原因是什么了,因為可能會有N種原因。

 

這里就列舉一個比較常見的原因,就是:

  • 本地開發環境與測試環境、生產環境上的軟件環境配置,可能出現不一致的情況,導致有些時候相同的代碼在不同的環境下運行會出現問題。

存在問題:不同機器上的軟件環境不一致。(比較核心的問題)

 

再列舉幾個實際開發中遇到的情況:

  • 公司在阿里云買了一臺新服務器,要想能正常發布項目等,前提是需要在服務器上重新安裝一些軟件環境(比如jdk、tomcat等),在安裝軟件環境的過程中,很大幾率會出現配置錯誤的情況;一些比較復雜的環境配置步驟會很多,很多人都記不清具體的步驟和命令,還得上網搜索......

存在問題:軟件環境的配置繁多、命令記不清楚。

 

  • 像jdk、tomcat等基礎的環境搭建,都已經很熟練了,每次有新機器的時候,都要重新搭建,這樣就造成了重復性工作、效率低下、配置繁瑣麻煩、易出錯等情況。

存在問題:重復性搭建軟件環境、效率低下。

 

當然也會有其他的問題,這里就不多做說明了。

 

比較好的做法是什么樣的?

舉個例子:

比如你到了一家新公司工作,一般都會讓你在電腦上安裝開發環境(比如JDK等),這時候一個技術人員遞給了你一個U盤,里面有很多安裝文件以及資源,你直接插在自己電腦上,copy需要的軟件安裝就行了,無需重新下載軟件。

 

上面的場景,比較好的一點是:不用在網上重新下載對應的軟件,直接使用U盤里面已經有的軟件進行安裝就行了。而且,U盤中的軟件可以進行版本更新以及提供給他人直接使用。多么方便。

 

所以,針對上面提到的開發過程中遇到的開發環境等問題,如果能做到只搭建一次環境,多次復用的話,就nice了!就不會出現環境不一致的問題,也不用重復搭建軟件環境了。

 

有什么技術方案能解決這樣的痛點嗎?

 

技術方案

因此,Docker出現了!


打賞

已有1人打賞

最代碼官方的gravatar頭像

分享到:

最近瀏覽
chenyipeng LV36小時前
星星星星星星
暫無貢獻等級
xxymxxym5937 LV210月16日
星星星星
a694110193 LV210月14日
星星星星
xxljxgz LV2110月14日
太陽月亮星星
wangshaoqiu LV310月14日
星星星星星星
huilenet LV1410月14日
月亮月亮月亮星星星星
墨冰之痕 LV110月12日
星星
52kaikai LV110月12日
星星
最代碼廣告位
頂部客服微信二維碼底部
>掃描二維碼關注最代碼為好友掃描二維碼關注最代碼為好友
谁有北京pk10计划群