1. 程式人生 > 實用技巧 >使用 Docker 構建和執行自己的映象

使用 Docker 構建和執行自己的映象

步驟

首先,從 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 . .