iT邦幫忙

2021 iThome 鐵人賽

DAY 17
0

「撰寫完 dockerfile → 轉成映像檔 → 建立容器」的流程雖說不複雜,但隨著要建立的容器一多,中間的相關性管理便會成為一大考驗。

Dockerfile - 用來建立映像檔的文件

使用者可以撰寫 dockerfile,來讓產生映像檔的流程自動化。撰寫完畢後,使用 docker build 來建立映像檔

Docker-Compose - 用來管理多個容器,並定義每個容器間的相依性、參數...等細節

編寫出的檔案為 .yml 格式。撰寫完畢後,可以使用 docker-compose up / down 來輕鬆啟用、刪除多個容器。

用 docker-compose 來建立容器

這邊以 Day15 - 撰寫一個 dockerfile,和 vue-cli 服務進行整合開發 裏頭的 vue 專案為例,接下來建立容器的指令操作,就可以由 docker-compose.yml 代勞。

version: "3"
services:
  vue:
    image: docker-vue-test
    volumes:
      - "<本機端的 docker-vue-test 絕對路徑>:/app"
    expose:
      - 8080
    ports:
      - 1234:8080

上面的內容效力等價於以下指令:

docker run -it -p 1234:8080 -v <本機端的 docker-vue-test 絕對路徑>:/app docker-vue-test

當你用 dockerfile 建立好 docker-vue-test 映像檔後,接下來需

  1. docker-compose up 來新增容器
  2. docker exec -it <容器名稱或是 ID> sh 來進入容器內的 /app 資料夾
  3. 執行 npm run serve 就完成了

參考資料

  1. Difference between Dockerfile and docker-compose

上一篇
Day 16 撰寫一個 dockerfile,和 vue-cli 服務進行整合開發
下一篇
Day 18 Docker Compose 簡介和安裝
系列文
以 Docker 為始的多種開源服務初探30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言