使用 Docker 構建和執行自己的映象
阿新 • • 發佈:2020-08-23
步驟
首先,從 GitHub 中克隆示例專案:
git clone https://github.com/dockersamples/node-bulletin-board
cd node-bulletin-board/bulletin-board-app
node-bulletin-board
專案是一個簡單的應用程式,使用Node.js編寫。我們使用它進行容器化。
構建映象:
docker build --tag bulletinboard:1.0 .
從映象中構建容器:
docker run --publish 8000:8080 --detach --name bb bulletinboard:1.0
- --detach:在後臺執行容器並打印出容器ID。
- --publish:將主機的8000埠繫結到容器的8080埠。
- --name:為容器分配一個命名。
訪問 localhost:8000
檢視部署結果。
刪除容器:
docker rm --force bb
- --force:刪除正在執行的容器。
或者停止後再刪除:
docker stop bb
docker rm bb
Dockerfile 說明
應用程式中包含了一個名為 Dockerfile
的檔案。 Dockerfile
定義瞭如何為容器構建專用檔案系統,還可以包含一些元資料,這些元資料描述瞭如何基於該映象執行容器:
# 使用官方node映象作為父映象 FROM node:current-slim # 設定工作目錄,後續的所有操作將在該目錄中執行 WORKDIR /usr/src/app # 將 package.json 從主機中複製到當前(工作)目錄 COPY package.json . # 在映象檔案系統中執行命令 RUN npm install # 通知 Docker 該容器在執行時監聽的埠 EXPOSE 8080 # 在容器中執行指定命令 CMD [ "npm", "start" ] # 將應用程式的其餘程式碼從主機複製到映象檔案系統中 COPY . .