1.Docker概念
- Docker可以將應(yīng)用以及依賴包到一個可移植的鏡像中,然后發(fā)布到Linux操作系統(tǒng)中,一個操作系統(tǒng)可以有多個鏡像,一個鏡像可以創(chuàng)建多個容器,每個容器之間相互隔離,并且容器運行不依賴于操作系統(tǒng),因為容器自身就有一個簡版系統(tǒng),其只依賴于Linux內(nèi)核。
2.鏡像的概念
- Docker將應(yīng)用程序及其所需的依賴、函數(shù)庫、環(huán)境、配置等文件打包到一起,稱為鏡像。
3.容器的概念
- 鏡像中的應(yīng)用程序運行后形成的進程就是容器,知識Docker會給容器進程做隔離,對外不可見。
4.鏡像的基本命令
- 拉取鏡像 docker pull imageName:imageTag
- 查看鏡像 docker images
- 導(dǎo)出鏡像 docker save -o targetName.tar imageName
- 導(dǎo)入鏡像 docker load -i targetName.tar
- 刪除鏡像 docker rmi imageName:imageTag
5.容器的基本命令
1.進入容器內(nèi)部的系統(tǒng) docker exec
2.查看容器的運行日志 docker logs
3.查看所有運行的容器及狀態(tài) docker ps
4.查看所有容器及狀態(tài) docker ps -a
5.創(chuàng)建并運行一個容器 docker run
6.停止一個運行的容器 docker stop
7.讓一個停止的容器重新運行 docker start
8.刪除一個容器 docker rm
9.讓一個與運行的容器暫停 docker pause
10.讓一個暫停的容器恢復(fù)運行 docker unpause
6.容器命令中的相關(guān)參數(shù)
1.--name 給容器起名
2.-p 定義宿主機端口和容器端口的映射關(guān)系,用冒號隔開
3.-d 后臺運行容器
7.數(shù)據(jù)卷操作基本命令
1.docker volume create 創(chuàng)建一個數(shù)據(jù)卷
2.docker volume inspect 顯示一個或多個數(shù)據(jù)卷的信息
3.docker volume ls 列出所有數(shù)據(jù)卷
4.docker volume prune 刪除未使用的數(shù)據(jù)卷
5.docker volume rm 刪除指定的數(shù)據(jù)卷
8.掛載數(shù)據(jù)卷
* 創(chuàng)建容器時,通過參數(shù)-v來掛載一個數(shù)據(jù)卷到某個容器內(nèi)的目錄中
docker run
--name mn
-v html:/root/html 把html數(shù)據(jù)卷掛載到容器的指定目錄中
-p 8080:80
nginx
9.Dockerfile概念
* 常見的鏡像在官方倉庫中都能找到,但自己寫的項目就必須用Dockerfile自己去構(gòu)建鏡像了
* 鏡像的構(gòu)成
1.基礎(chǔ)鏡像:應(yīng)用依賴的操作系統(tǒng)
2.層:程序依賴的安裝包、配置、依賴等
3.入口:鏡像運行的入口,一般是程序啟動的腳本和參數(shù)
10.Dockerfile的相關(guān)指令
* FROM 指定基礎(chǔ)鏡像
* ENV 設(shè)置環(huán)境變量,可在后面指令使用
* COPY 拷貝本地文件到鏡像的指定目錄
* RUN 執(zhí)行Linux的shell命令,一般是安裝過程的命令
* EXPOSE 指定容器運行時監(jiān)聽的端口
* ENTRYPOINT 鏡像中的啟動命令,容器運行時調(diào)用
11.DokcerCompose概念
* DockerCompose可以基于Compose文件幫我們快速部署分布式應(yīng)用,無需手動一個個去創(chuàng)建和運行容器
本文摘自 :https://www.cnblogs.com/