iT邦幫忙

2023 iThome 鐵人賽

DAY 5
0
DevOps

從0開始學習DevOps,並部署CICD至Java專案中系列 第 5

Docker的基本要素與常用指令

  • 分享至 

  • xImage
  •  

Docker 的基本要素

  • 鏡像 / 映像檔(image):就是一個配置好、打包出來的一個image,需要放在container 才可以直接執行,無法單獨執行,有點像是你把程式打包成一個 jar 檔,需要透過tomcat 執行。
  • 容器(container):可以裝載很多的image,不同的container可以裝載相同的image,一個container可以是一個執行環境,每個container各自獨立,是互相隔離的。
  • 倉庫(repository):用來存儲和共享 Docker Image 的地方,如官方的 docker hub,有很多image可以直接從docker hub中下載 到 container中使用

Docker 常用指令

  • docker search <image name> 尋找倉庫可下載的image
    https://ithelp.ithome.com.tw/upload/images/20230920/20162058VYP1g2Uv3t.png

  • docker images 取得目前所有的image
    https://ithelp.ithome.com.tw/upload/images/20230920/20162058kYxzn6BXbK.png

  • docker rmi <image ID> 刪除image
    https://ithelp.ithome.com.tw/upload/images/20230920/20162058XJAU8Aux7m.png

  • docker ps -a 取得目前正在運行或已停止的 container 狀態

https://ithelp.ithome.com.tw/upload/images/20230920/20162058x5BZS5wwwn.png

  • docker stop <container ID> 停止運行中的container

  • docker rm <container ID> 刪除已停止的container
    https://ithelp.ithome.com.tw/upload/images/20230920/20162058YqGc0YESht.png

  • docker rm <container ID> <container ID> <container ID> 也可一次刪除多個 container
    https://ithelp.ithome.com.tw/upload/images/20230920/20162058Hy5LCkBOzh.png

關於執行container

  • docker run --name <指定container name> -d <image ID>
    • 創建container並執行,--name <指定container name>可以選擇不加,名稱就會由docker產生。
    • -d 表示從終端機的後台執行,不會影響終端機繼續使用的流程。(意思就是不需要等他run完你才能繼續做別的事,可以直接做別的事,不受啟動時間長短影響)

需要特別留意的是,如果加上-d,那啟動過程中有異常狀態時,是無法在console就直接看到log以及啟動過程的,如果要查看啟動的log可以使用:

  • docker logs <container ID 或 container name>

    • 就會列出啟動這個container 的所有logs
      https://ithelp.ithome.com.tw/upload/images/20230920/20162058WsMfaRfVm8.png
  • 已經構建出container後,要再次執行時,請使用指令:docker start <container id 或 name>


上一篇
下載Docker與運行
下一篇
如何使用Docker建立MySQL Container?
系列文
從0開始學習DevOps,並部署CICD至Java專案中30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言