您需要了解的有關 docker 的所有訊息都在這篇文章中。別擔心 - 我會保持非常簡短和簡潔 ⚡
我將引導您了解這些概念:容器、圖像等。然後我們將編寫自己的“Dockerfile”來容器化一個非常簡單的 Python 應用程式!
原文出處:https://dev.to/dhravya/docker-explained-to-a-5-year-old-2cbg
Docker 是一種“容器化”應用程式的方法(將程式碼放入可以獨立工作的盒子中)。它神奇地製造了一台虛擬計算機,但你猜怎麼著——它們並不是真正的虛擬計算機。
容器是沒有主機操作系統的盒子,因此它們獨立於執行的設備。
可以這樣想——有一隻蜜蜂只喜歡住在自己的蜂巢裡,如果它住在其他地方就無法工作。你只需將蜜蜂困在一個看起來和摸起來都像蜂窩的盒子裡。這就是容器化。
容器是使用“Images”製作的
Docker 鏡像就像模板——一本 擁有全部製造流程說明 的工藝手冊。或者,換句話說,它包含一組用於建立容器的指令。
但是如何製作這些圖像(以便稍後製作容器)?
這是使用 Dockerfile 完成的。
Dockerfile 是一個文本文件,其中包含用戶可以在命令行上呼叫來組裝映像的所有命令。
好吧,讓我們一起製作一個 Dockerfile。
現在,我們將從 docker 開始動手!
在您的設備上快速下載 docker:https://www.docker.com/get-started
現在您已經有了它,讓我們編寫一個簡單的 Flask 應用程式並將其容器化!
這是一個非常簡單且最小的 flask 應用程式
現在,儘管這可能非常基本,但它實際上需要很多東西才能執行:
有些程序可能只能在特定的操作系統上執行 - 例如僅限 Windows 或僅限 Linux 的東西。
所有這些問題都可以通過編寫一個簡單的 dockerfile 來解決,該文件為我們設置了一個 docker 鏡像。
所以你需要建立一個名為“Dockerfile”的文件(確切地說,沒有任何文件擴展名)
這是一個演練:
使用 FROM 使用 python 基礎鏡像
使用 COPY 將 app.py 文件複製到容器中
使用RUN來pip安裝flask
當容器啟動時使用CMD執行“python app.py”
就這麼簡單!
小修正:該文件應命名為 Dockerfile
現在,使用“docker build”命令建置 docker 映像,然後使用“docker run .”命令執行該映像。
還可以使用--tag
給鏡像起個名字,方便自己以後執行
docker build --tag flask .
docker run --name flask -p 5000:5000 flask
這裡,--name
是要執行的容器的名稱(我將其命名為flask),-p將docker CONTAINER的端口設置到您的機器,這樣您就可以在localhost
上看到您的應用程式。最後,名稱中的“flask”是要執行的鏡像的名稱。
大概就是這些!
“docker ps”命令獲取正在執行的容器的列表,
“docker ps -a”獲取所有容器的列表
“docker images”獲取圖像列表
“docker --help”獲取所有命令的列表
多多嘗試看不同指令吧!
感謝留言...感謝參與討論!
這篇是我看到國外的入門介紹文章,順手翻譯
你說的那些東西,都是很好的方向,但我自己也還不熟
有機會的話,也歡迎您針對那些方向寫點文章,可以造福很多人!
(本站支援 markdown 格式寫作,您可以試試看!)
既然都要介紹了,可以把容器(Container)的發展史講清楚一點...它的出現是實務上為了處理哪些問題?
例如:docker與現在的上游moby是啥關係? podman呢?(它解決了啥docker的痛點) LXC呢? 還有哪些容器的實作? 各有哪些優/缺點? 適用場景?