本文面向的讀者是對Docker技術有一些基本概念,但因為沒有測試環境,是以沒有動手操作過的朋友們。
最近Jerry因為要做一個新的SAP雲産品開發,得搭各種開發環境,其中之一就是Docker.
Jerry之前的文章曾經簡單介紹過Docker:
- [站在巨人肩膀上的牛頓:Kubernetes和SAP Kyma]()
- 在Kubernetes上運作SAP UI5應用(上)
- 在Kubernetes上運作SAP UI5應用(下)
當時給出的例子是,在Ubuntu作業系統下用Docker和Kubernetes運作一個UI5應用。因為我知道ABAP從業者們很多用的還是Windows開發環境,是以本文簡單地把我在Windows作業系統下搭建Docker的步驟羅列出來,有興趣的朋友可以照着做一遍。
這裡的Windows特指Windows10.
Windows作業系統使用Docker的前提是要開啟Hyper V虛拟技術,在控制台裡把Hyper-V前面的勾選中,重新開機即可。
Docker官網下載下傳Docker For Windows的Community版本:
下載下傳下來是一個900多兆的可執行檔案:
安裝後,在右下角工作列裡能看到Docker的圖示:
安裝預設會把Docker指令行工具docker.exe和容器編排工具docker-compose.exe安裝到Program Files的Docker檔案夾内:
右鍵可以使用GUI的方式來管理:
但我們一般情況下還是更習慣于使用指令行工具docker.exe對各種容器鏡像進行操作。
Jerry已經事先開發好了一個SAP UI5應用,将其部署并運作在Nginx伺服器上,并且把該應用和Nginx伺服器一起打包在一個容器鏡像内,并釋出到
Docker Hub上了,位址如下:
指令行裡直接運作這個鏡像即可:
docker run i042416/ui5-nginx:v2.0
從指令列印日志能看出,因為我的本地環境沒有這個名為i042416/ui5-nginx,标簽為v2.0的鏡像,是以首先會自動從Docker Hub将鏡像下載下傳到本地。
之後使用docker images指令就能看到這個成功下載下傳到本地的鏡像了,大小約為109MB:
現在使用如下的指令行啟動一個容器:
docker run -d -p 1080:80 --name jerrynginx i042416/ui5-nginx:v2.0
各參數含義如下:
-d: 以背景模式啟動容器,傳回其ID.
-p: 将容器内部Nginx開放的端口80映射到主控端端口1080,這樣主控端即Windows環境下通過浏覽器輸入localhost:1080通路該容器。
--name: 給啟動的容器執行個體取一個名字。
執行完指令行之後,浏覽器輸入如下
url,即可通路到運作在容器内的Nginx之上的SAP UI5應用:
docker ps指令,能看到這個處于運作狀态的容器執行個體:
docker inspect jerrynginx能檢視明細:
在Windows Docker Desktop的Dashboard菜單裡能觀察到這個名為jerrynginx,處于背景運作狀态下的容器執行個體:
該Dashboard提供了針對運作時容器執行個體的一些基礎操作,比如檢視日志:
以及登入容器執行個體内部,以互動式方式執行指令行等功能。這些功能均對應有docker指令行工具的實作,可以根據喜好來選擇使用。
要擷取更多Jerry的原創文章,請關注公衆号"汪子熙":