Docker虛擬容器學習筆記(二):概念與指令

Image和Container的差別

image就像系統安裝映像檔(可產生很多個container)
container
就像被安裝好的作業系統

Docker流程

step 0 : 新增 Dockerfilestep 1 : 找到適合的 base image         #Docker Hubstep 2 : copy 原始碼step 3 : 安裝 dependenciesstep 4 : 設定 initial commandstep 5 : build

上傳至Docker Hub

https://larrylu.blog/share-image-on-dockerhub-ccb7d9b26fa8

使用 Volume 保存容器內的數據

https://larrylu.blog/using-volumn-to-persist-data-in-container-a3640cc92ce4

搜索鏡像

docker search ubuntu

下載鏡像

docker pull ubuntu

列出已下載的鏡像

docker images

創建並使用容器

docker run -i -t --name hellodocker ubuntu /bin/bash命令格式為:docker run <選項參數>  <鏡像名稱> <要運行的文件>>使用 -i、-t選項可以在運行的Bash shell中進行輸入與輸出
>使用—name可以指定容器的名稱。如果不指定的話,docker默認會自動生成隨機的名稱進行指定。
> -d 讓程式執行於後台, 關閉終端機後還會繼續執行

退出容器

exit

查看運作中容器列表

docker ps

查看容器列表

docker ps -a

使用start命令來啟動容器

docker start hellodocker# docker start 容器名

使用restart命令來重啟容器

docker restart hellodocker

使用stop命令終止容器

docker stop hellodocker
docker kill $(docker ps -q) #停止所有容器

使用rm刪除容器

docker rm GG #必須先刪除容器,再刪除映像檔

刪除所有容器

docker container prune -f
docker rm -f $(docker ps -qa) #一次刪除所有停止的容器

使用rmi刪除鏡像

docker rmi ubuntu #必須先刪除容器,再刪除映像檔

刪除所有鏡像

docker image prune --force --all

使用attach命令連接容器(進入容器)

docker attach hellodocker

Docker系統統計信息

docker stats

使用build構建鏡像

docker build -t test:v1 .

複製目錄

docker cp /實體機path/to/file1 DOCKER_ID:/虛擬機path/to/file2#docker會直接將實體機整個目複製到虛擬機當中docker cp DOCKER_ID:/虛擬機path/to/file1 /實體機path/to/file2#docker會直接將虛擬機整個目錄的檔案複製到虛擬機當中Docker 容器內的預設路徑是根目錄(/

掛載目錄

docker run -it -v /home/seal/data:/data tensorflow/tensorflow bash將實體機器的/home/seal/data 掛載至 Docker 容器內的 /data,讓實體機器與 Docker 容器可以共享同一個目錄。

Written by

Machine Learning / Deep Learning / Python / Flutter cakeresume.com/yanwei-liu

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store