以前要在本地跑一些有意思的工程和實(shí)驗(yàn),都需要通過在本地裝上一大堆軟件來實(shí)現(xiàn)。最近發(fā)現(xiàn)有一種更酷的方式:Docker。 用 Docker 在本地搭建開發(fā)環(huán)境有一系列顯而易見的優(yōu)勢:
不用依賴公司的資源,開發(fā)機(jī)資源夠夠的,環(huán)境完整可控,想怎么玩怎么玩,不用擔(dān)心留痕也完全不會(huì)影響別人
能夠使用標(biāo)準(zhǔn)化的鏡像屏蔽掉一切安裝過程的坑,不用擔(dān)心安裝過程中出現(xiàn)的各種亂七八糟的報(bào)錯(cuò)
[虛擬環(huán)境]想用即用,不想用了隨時(shí)丟掉,不用操心清理起來很麻煩
鏡像的安裝方式大大降低了安裝門檻,而且在虛擬環(huán)境跑服務(wù)完全沒有任何心理門檻,終于可以在本地把想安裝的中間件或者服務(wù)跑全了
酷,重點(diǎn)是酷
Docker 搭建的環(huán)境為什么能做到以上優(yōu)勢
道理其實(shí)很簡單,使用 Docker Desktop 在本地起一個(gè)虛擬機(jī),然后在虛擬機(jī)里跑 Docker。這樣所有的安裝和啟停變更都發(fā)生在虛擬環(huán)境里,自然而然的就帶來了以上優(yōu)勢。
安裝基礎(chǔ)環(huán)境
下載 Docker Desktop,安裝過程踩了兩個(gè)雷:
WSL2 Linux 內(nèi)核更新包
DockerDesktoprequiresanewerWSLkernelversion 這個(gè)報(bào)錯(cuò)是字面意思,需要更新內(nèi)核版本。下載 WSL2 Linux 內(nèi)核更新包即可:地址
Docker 容器運(yùn)行需要依賴虛擬化
HardwareassistedvirtualizationanddataexecutionprotectionmustbeenabledintheBIOS 這個(gè)報(bào)錯(cuò)是因?yàn)?[BIOS]里沒有把對虛擬化的支持打開,重啟進(jìn)入 BIOS,打開虛擬化相關(guān)配置即可。
運(yùn)行你的第一個(gè)容器
安裝完畢之后就可以用了。Docker Desktop 的首頁非常簡潔明了。
Guides 里有三個(gè)示例,大大的 Run,點(diǎn)下去就可以快捷的體驗(yàn)本地服務(wù)了。這里我們啟動(dòng) Nginx 試試。
切換到 Terminal Tab 可以對容器發(fā)出指令
這種起服務(wù)的方式,我覺得比以前挨個(gè)安裝軟件的方式確實(shí)爽太多了。 至此 Docker 所需的環(huán)境已經(jīng)搭建成功了,但是距離我們搭建一個(gè)很酷的本地開發(fā)環(huán)境還差得遠(yuǎn)。因?yàn)檫€有一連串的問題等著我們。 比如我們再深入玩一下剛才啟動(dòng)的 Nginx 容器,就會(huì)發(fā)現(xiàn)有很多指令找不到,這對于我們在本地調(diào)試是不可接受的。
再比如需要部署到 Nginx 的制品如何與本地文件映射,本地啟動(dòng)多個(gè)依賴服務(wù)時(shí)網(wǎng)絡(luò)與端口如何管理。以及針對不同的本地開發(fā)所需要依賴的資源和服務(wù),可能需要通過自行 build docker file 的方式才能讓他們在本地用起來更加絲滑和酷炫。這些問題,我們留到后文再續(xù)。 你在本地做開發(fā)的時(shí)候,是怎么搭建和管理自己的環(huán)境呢?歡迎留言討論。
-
內(nèi)核
+關(guān)注
關(guān)注
3文章
1372瀏覽量
40290 -
Linux
+關(guān)注
關(guān)注
87文章
11304瀏覽量
209502 -
開發(fā)環(huán)境
+關(guān)注
關(guān)注
1文章
225瀏覽量
16617 -
虛擬機(jī)
+關(guān)注
關(guān)注
1文章
917瀏覽量
28197 -
Docker
+關(guān)注
關(guān)注
0文章
458瀏覽量
11856
原文標(biāo)題:用 Docker 搭建更酷的本地開發(fā)環(huán)境
文章出處:【微信號:良許Linux,微信公眾號:良許Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論