Docker 是一個開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的容器中失仁,然后發(fā)布到任何流行的 Linux 機器上尸曼,也可以實現(xiàn)虛擬化。容器是完全使用沙箱機制萄焦,相互之間不會有任何接口控轿。Docker 使用客戶端-服務(wù)器 (C/S) 架構(gòu)模式,使用遠程API來管理和創(chuàng)建Docker容器拂封。Docker 容器通過 Docker 鏡像來創(chuàng)建茬射。容器與鏡像的關(guān)系類似于面向?qū)ο缶幊讨械膶ο笈c類。
原文地址:代碼匯個人博客 http://www.codehui.net/info/60.html
測試環(huán)境:centos7.6
Docker安裝
- 環(huán)境要求
Docker 要求 CentOS 系統(tǒng)的內(nèi)核版本高于 3.10 冒签,查看本頁面的前提條件來驗證你的CentOS 版本是否支持 Docker 在抛。
通過 uname -r
命令查看你當(dāng)前的內(nèi)核版本
[root@localhost ~]# uname -r
3.10.0-957.5.1.el7.x86_64
- 安裝docker
使用yum
安裝和腳本兩種安裝方法都可以,親測yum
能快點萧恕。注意使用sudo
或root
權(quán)限登錄Centos
刚梭。
# 先更新下yum包
sudo yum update
# 使用yum安裝
yum install -y docker
# 使用腳本安裝
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
- 啟動docker
# 啟動docker
sudo systemctl start docker
# 重啟docker
sudo systemctl restart docker
- 查看docker版本
[root@localhost ~]# docker --version
Docker version 18.09.2, build 6247962
- 設(shè)置鏡像加速
vi /etc/docker/daemon.json
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
- 設(shè)置開機自啟
# 設(shè)置開機啟動
systemctl enable docker
# 將指定用戶添加到用戶組
usermod -aG docker root
Docker常用命令
1. docker version
顯示docker版本信息
2. docker info
顯示docker系統(tǒng)信息
3. docker search
從Docker Hub查找鏡像
docker search php
查找php的鏡像
4. docker images
列出本地鏡像
5. docker ps
列出所有在運行的容器信息
docker ps -a
顯示所有的容器,包括未運行的
6. docker pull
從鏡像倉庫中拉取或者更新指定鏡像
docker pull codehi/nginx:v1
拉取自己倉庫的nginx鏡像
7 docker start/stop/restart
啟動/停止/重啟容器
docker stop mynginx
停止運行中的容器mynginx
8. docker rm
刪除一個或多個容器
docker rm mynginx
刪除容器mynginx,正在運行中的容器需要stop后才能刪除票唆,或者使用強制刪除朴读。
docker rm -f mynginx
強制刪除運行中的容器mynginx
9. docker rmi
刪除本地一個或多個鏡像
docker rmi codehi/nginx:v1
刪除鏡像codehi/nginx:v1
docker rmi -f codehi/nginx:v1
強制刪除
10. docker logs
獲取容器的日志
docker logs -f mynginx
跟蹤容器mynginx的日志,實時輸出的走趋。
11. docker history
查看指定鏡像的創(chuàng)建歷史
docker history codehi/nginx:v1
查看本地鏡像codehi/nginx:v1的創(chuàng)建歷史
12. docker login
登陸到一個Docker鏡像倉庫衅金,如果未指定鏡像倉庫地址,默認為官方倉庫 Docker Hub
docker login
登錄至Docker Hub,下一步會提示輸入賬號密碼
13. docker logout
登出Docker Hub
14. docker push
將本地的鏡像上傳到鏡像倉庫,要先登陸到鏡像倉庫
docker push codehi/nginx:v1
將本地鏡像codehi/nginx:v1鏡像推送到docker hub倉庫中
15. docker commit
從容器創(chuàng)建一個新的鏡像
docker commit -a "codehui" -m "test" 3218b3ad4e47 codehi/nginx:v1
3218b3ad4e47 保存為新的鏡像codehi/nginx:v1,并添加提交人信息(codehui)和說明信息(test)
16. docker tag
標(biāo)記本地鏡像氮唯,將其歸入某一倉庫
docker tag nginx:v1 codehi/nginx:v2
將鏡像nginx:v1標(biāo)記為 codehi/nginx:v2 鏡像
17. docker save
將指定鏡像保存成 tar 歸檔文件
docker save -o codehi-nginx-v1.tar codehi/nginx:v1
將鏡像codehi/nginx:v1生成codehi-nginx-v1.tar歸檔文件
18. docker load
從歸檔文件中創(chuàng)建鏡像
docker load -i codehi-nginx-v1.tar
從鏡像歸檔文件codehi-nginx-v1.tar創(chuàng)建鏡像
19. docker export
將文件系統(tǒng)作為一個tar歸檔文件導(dǎo)出到STDOUT
docker export -o codehi-nginx-v1.tar mynginx
將容器mynginx保存為tar文件鉴吹。
20. docker import
從歸檔文件中創(chuàng)建鏡像
docker import codehi-nginx-v1.tar codehi-nginx-v1
從鏡像歸檔文件codehi-nginx-v1.tar創(chuàng)建鏡像,命名為codehi-nginx-v1
21. docker kill
殺掉一個運行中的容器
docker kill -s KILL mynginx
殺掉運行中的容器mynginx
這些命令比較常用惩琉,其他的可以自行查看文檔:docker基本命令