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

前言

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

 

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

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

 

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

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

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

 

存在什么問題?

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

 

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

 

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

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

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

 

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

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

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

 

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

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

 

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

 

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

舉個例子:

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

 

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

 

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

 

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

 

技術方案

因此,Docker出現了!


打賞

已有2人打賞

已注銷用戶的gravatar頭像最代碼官方的gravatar頭像
最近瀏覽
7561241365月6日
暫無貢獻等級
已注銷用戶 LV344月1日
太陽太陽星星星星
劍客闖天涯 LV31月19日
星星星星星星
君知否 LV171月17日
太陽星星
zzgover LV42019年12月24日
月亮
zhazhahui LV12019年12月19日
星星
劉孟飛 LV112019年12月2日
月亮月亮星星星星星星
gtlishujie LV62019年11月18日
月亮星星星星
崔新睿 LV12019年11月11日
星星
DoubleL LV12019年11月11日
星星
頂部客服微信二維碼底部
>掃描二維碼關注最代碼為好友掃描二維碼關注最代碼為好友
2008大乐透走势图