docker run 鏡像名稱 這個過程可以理解為:把鏡像文件創建成docker容器的一部分,然後再進行啓動

--d:後台運行

-it:交互式命令

--rm:容器掛掉後自動刪除

--name:給容器起一個名字

-p:端口映射

 

容器日誌查看場景:

假設別人問,你們之前是使用Docker來部署環境嗎?

是的

 

那如果被測試的程序出問題了,你的日誌是在哪裏看的,怎麼反饋給開發的

1.獲取到程序運行的容器ID

2.通過docker logs 容器ID來查看錯誤的日誌

3.日誌信息獲取成功後,發送給開發

 

查看日誌方式

1.一種是查看動態的日誌(日誌在實時的更新,一直查看到最後的日誌信息)

 

2.一種是查看靜態的日誌(把日誌文件下載下來,打開查看)

docker logs imageID

-f

鏡像暴露日誌_centos

當日志內容很多的時候,只想查看最後的N行

docker log containerID | tail-N

 

容器提交

docker commit imageID 別名

操作步驟:
1、先進入到容器裏面
docker run -it  --rm centos:7.8.2003 bash

鏡像暴露日誌_centos_02

2、在容器裏面安裝第三方的軟件
yum install vim

 

 

鏡像暴露日誌_centos_03


3、查看容器的ID

docker ps -a | grep centos

鏡像暴露日誌_centos_04


4、然後提交(提交期間,容器是不能退出)
 docker commit containerID newImageName

鏡像暴露日誌_docker_05

進入vim怎麼退出:

1.進入vim,按esc

2.再按shift :

3.再輸入q!,按下回車鍵

 

使用Docker部署環境流程:

1.開發編寫代碼完成後

2.開發編寫Dockerfile文件來構建成鏡像

3.然後使用docker run來啓動鏡像,也就是容器

4.通過如上步驟就可以完成了環境部署,測試可以開始測試

 

什麼是Dockerfile?

其實可以把它理解為操作Docker一系列命令的集合

 

Dockerfile組成部分
dockerfile的主要組成部分可以彙總為:
  •  基礎鏡像信息
  •  製作鏡像操作指令 RUM
  •  容器啓動時執行指令CMD["/bin/bash"]

 

Dockerfile基本指令
          dockerfile的指令主要可以彙總為如下,使用dockerfile的前提是學習會這些指令的基本使用,具體如下:
  •  FROM #指令基礎鏡像
  •  MAINTAINER #指定維護者信息,也可以沒有
  •  RUN #具體執行的操作,在命令前面加上RUN即可
  •  ADD #COPY文件,會自動進行解壓
  •  WORKDIR #設置當前工作目錄
  •  VOLUME #設置卷,掛載主機目錄
  •  EXPOSE #指定對外的端口
  •  CMD #指定容器啓動後需要乾的事情
  •  COPY #複製文件
  •  ENV #環境變量
  •  ENTRYPOINT #容器啓動後執行的命令

 

桌面創建一個文件夾名字叫:learnDocker  然後裏面創建一個文件 Dockerfile 裏面寫入

#獲取centos的鏡像,版本7.8.2003
FROM centos:7.8.2003
MAINTAINER 無涯
#定義一個變量
ENV name Docker
ENTRYPOINT  echo "Hello $name"

然後運行:

鏡像暴露日誌_docker_06

然後查看

鏡像暴露日誌_Dockerfile_07

 

 

 最後輸出

鏡像暴露日誌_Dockerfile_08

 

 

nginx

桌面創建一個文件夾名字叫:learnDocker  然後裏面創建一個文件 Dockerfile 裏面寫入

鏡像暴露日誌_鏡像暴露日誌_09

 

 

 然後查看

鏡像暴露日誌_Dockerfile_10

 

 

 運行

鏡像暴露日誌_Dockerfile_11

 

 

 隨後重新打開一個控制枱進行輸出

鏡像暴露日誌_centos_12

 

netstat -ano | findstr 80:查看80端口是否被佔用

鏡像暴露日誌_鏡像暴露日誌_13