docker 基本操作

本文借鑑:https://itxing666.github.io/2018/07/18/docker/,且親測案例

image(鏡像)簡單操作

查操作:

// 列出本機所有image 文件
docker image ls
或
docker images

刪操作:

-------------------------------------------------------------

注意刪除鏡像操作有坑!!!請閱讀完在操作

// 刪除鏡像操作
docker rmi [image id]

若執行操作時報錯,顯示鏡像正在被使用,需要停止容器。 

Error response from daemon: conflict: unable to delete fce289e99eb9 (must be forced) - image is being used by stopped container adde05e5da86

請先查看該鏡像的容器ID

// 查看容器ID
docker ps -a

刪除容器ID

// 刪除容器ID
docker rm [CONTAINER ID]

然後在執行刪除鏡像操作 

-------------------------------------------------------------

創建鏡像文件操作:

準備工作:

注意!!!執行什麼語言的文件務必獲取該語言的鏡像文件[大部分在鏡像倉庫中都能夠獲取到]

從docker hub鏡像庫獲取鏡像文件等操作(母鏡像)

// 拉取鏡像文件
docker pull [image 文件]

// 查看鏡像文件
docker images 

// 運行鏡像文件
 docker container run [image 文件]

執行情況如下圖所示(圖片出自https://itxing666.github.io/2018/07/18/docker/,親測確實有效)

開始創建:

進入到需要放到docker中的文件

// cd 文件夾名
cd GO

創建Dockerfile文件

// 創建 Dockerfile配置文件
touch Dockerfile
vim Dockerfile

文件中寫入
FROM golang
FROM golang
MAINTAINER "xingdm"
WORKDIR $GOPATH/src/godocker
ADD . $GOPATH/src/godocker
RUN go build go_1.go

解釋 並 拓展:
FROM -> 母鏡像 

MAINTAINER -> 維護者信息 

WORKDIR -> 工作目錄 

ADD -> 將文件複製到鏡像中 

RUN -> 執行操作(就跟在終端執行語句一樣) 

EXPOSE -> 暴露端口 

ENTRYPOINT -> 程序入口

創建image 文件

// 創建image文件
docker image build -t [image文件名] .
例子
docker image build -t go .

生成容器

//生成容器
docker container run  -it [image文件名] /bin/bash
例子
docker container run  -it go /bin/bash

解釋 並且 拓展:
-it 容器的 Shell 映射到當前的 Shell,然後你在本機窗口輸入的命令,就會傳入容器
-p 容器的3000端口映射到本機的8000端口(web項目需要考慮端口映射) -p 3000:8000
/bin/bash 容器內部第一個執行的命令。這裏是啓動 Bash,保證用戶可以使用 Shell
go image文件的名字(如果有標籤,還需要提供標籤,默認是 latest 標籤)

如下圖所示

ok 自己完成了一個簡單的創建image文件過程

彩蛋~~~

由於是新手所以瞎搞踩了個坑

docker中創建了一個同image ID ,REPOSITORY不同(image 文件名相同)的文件。如何刪除

發佈了9 篇原創文章 · 獲贊 10 · 訪問量 4872
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章