Docker映象製作使用操作流程(以bcc-explorer專案為例)
阿新 • • 發佈:2018-12-26
Docker映象製作使用流程(以bcc-explorer專案為例)
bcc-explorer專案是最近實習時做的一個專案,這裡只是用來舉例說明docker的用法,具體專案內容不是重點。
1 編寫dockerfile檔案
1) 進入bitcore-node資料夾(主資料夾),新建一個Dockerfile檔案:
$ cd bitcore-node
$ touch Dockerfile
2) 向Dockerfile檔案中新增內容:
$ echo ‘FROM node:9.4.0
COPY . /bcc-explorer
WORKDIR /bcc-explorer/bin/mynode
EXPOSE 3001
ENV LIMITHEIGHT=50000
CMD ../bitcore-node start $LIMITHEIGHT’ >> Dockerfile
// 以下為註釋:
// FROM node:9.4.0該 image 檔案繼承官方的 node image,冒號表示標籤,這裡標籤是9.4.0,即9.4.0版本的 node。
// COPY . /bcc-explorer 表示將根目錄下所有檔案拷貝到容器bcc-explorer資料夾下
// WORKDIR /bcc-explorer/bin/mynode 指定接下來的工作路徑
// EXPOSE 3001 暴露出3001埠,允許外部連線該埠
// ENV LIMITHEIGHT=50000 設定環境變數
// CMD ../bitcore-node start $LIMITHEIGHT 啟動容器後執行的命令
2 列表內容
使用Dockerfile檔案建立image檔案:
$ docker image build –t bcc-explorer:0.0.1 .
// -t用於指定為image的名字,注意最後的. 表示根目錄
3 釋出image檔案:
$ docker login –u [username] –p [password]
// 登陸docker hub賬戶
$ docker tag bcc-explorer:0.0.1 [username]/bcc-explorer:0.0.1
// 為本地的image標註使用者名稱和版本
$ docker push [username]/bcc-explorer:0.0.1
// 將image釋出到自己的docker hub上
4 根據映象檔案生成容器:
1) 啟動容器:
$ docker container run –e LIMITHEIGHT=[limitheight] –p [port]:3001 –it bcc-explorer:0.0.1
// -e表示設定環境變數,LIMITHEIGHT=[limitheight]來具體設定
// -p表示對映埠,[port]:3001表示docker的3001埠對映到宿主機的[port]埠
// -it表示將容器的shell對映到當前的shell,可以在宿主機終端使用命令列傳給容器執行
2) 停止容器:
$ docker container stop [containerID]
3) 刪除容器(或者映象):
$ docker container(image) rm [container/imageID, …….]