Docker對于我意味著什么?它如何改變了我
Windows對Docker的支持
不知不覺間,使用Docker已經(jīng)有了快5年的時(shí)間,這5年對于Docker的使用,徹底改變了我的開發(fā)習(xí)慣,現(xiàn)在我已經(jīng)完全習(xí)慣了在Windows上進(jìn)行開發(fā)。
Windows對于DDocker的集成,讓軟件開發(fā)和部署不會由于是Windows環(huán)境而出現(xiàn)問題,很多Windows上不支持的軟件,也完全可以通過Docker容器來安裝,如果現(xiàn)在有誰還在告訴你Windows上開發(fā)軟件不靠譜,那么他一定是上個世紀(jì)的人。
不僅僅是對Docker的支持,wsl2的出現(xiàn)也讓W(xué)indows對于開發(fā)者變得越來越友好。特別是vscode中remote插件的出現(xiàn),現(xiàn)在你完全可以在Windows上開發(fā)Linux應(yīng)用,而這一切在過去只有通過ssh遠(yuǎn)程Linux服務(wù)器才能做到。
不管你承不承認(rèn),Linux在桌面環(huán)境上做得和Windows還有mac之間有很大的差距,而現(xiàn)在你有了一個選擇,那就是一邊選擇Linux的服務(wù)器環(huán)境,一邊使用Windows的桌面環(huán)境,兩者之間現(xiàn)在有了非常完美的切合。
環(huán)境搭建不再是頭疼的一件事
猶記得當(dāng)初學(xué)習(xí)php的時(shí)候,一個環(huán)境就搭建了一個星期,而且最后還是沒有搭建出完美的環(huán)境?,F(xiàn)在不同了,有了Docker之后,我們可以在幾分鐘之內(nèi)就搭建好一個php的環(huán)境,而且我們可以在分分中之內(nèi)搭建多個不同版本的php環(huán)境,一切都是非常的方便。
之前如果要搭建一個集群進(jìn)行測試的話,可能要花費(fèi)一天的時(shí)間,現(xiàn)在有了Docker,有了Docker-compose,我們可以在幾分鐘之內(nèi)就將集群環(huán)境搭建好。
過去做開發(fā)的時(shí)候,我們很難保證生產(chǎn)環(huán)境和開發(fā)環(huán)境的同步,因此很多bug我們只能到生產(chǎn)環(huán)境進(jìn)行修復(fù),這是非常危險(xiǎn)的操作?,F(xiàn)在有了Docker,我們的環(huán)境可以做到和生產(chǎn)環(huán)境幾乎一模一樣。
測試沙盒
之前我們在學(xué)習(xí)和使用一個新的軟件的時(shí)候,很怕破壞了開發(fā)環(huán)境,導(dǎo)致我們需要重裝系統(tǒng),現(xiàn)在有了Docker以后,我們再也不怕搞壞我們的環(huán)境了。一個容器環(huán)境損壞了,我們可以分分鐘再創(chuàng)建一個新的容器出來。有了Docker,我們就有了一個可以隨意破壞的環(huán)境,我們在這個環(huán)境上可以進(jìn)行大膽的操作。
以前的開發(fā)有一套環(huán)境,生產(chǎn)有一套環(huán)境,測試還有一套環(huán)境,彼此之間總是有著些許的不同,而就是這些不同,往往產(chǎn)生了很多bug,而復(fù)現(xiàn)這些bug,往往花費(fèi)了開發(fā)人員大量的時(shí)間,而有了Docker,三者的環(huán)境變得統(tǒng)一了,即使測試人員搞壞了測試環(huán)境,我們也能夠在幾分鐘內(nèi)重新搭建好測試環(huán)境,這對于測試人員來說就是天大的好事,他們再也不用擔(dān)心自己的操作導(dǎo)致整個測試環(huán)境不能再用了。
總結(jié)
Docker以一己之力改變了我們從開發(fā)到測試,到上線產(chǎn)品的整個業(yè)務(wù)邏輯。
一開始你可能會覺得使用Docker很繁瑣,學(xué)習(xí)Docker命令很枯燥,但是一旦當(dāng)你熟悉了Docker之后,你會發(fā)現(xiàn)Docker真的太好用了,你會不知覺地愛上它。
如果有一天Docker從你的世界消失的話,你一定會變得焦慮恐慌,因?yàn)樗呀?jīng)成為了你開發(fā)過程中不可或缺的一部分。