原文鏈接:https://github.com/helloyoucan/knowledge
系統(tǒng)環(huán)境:centos7
安裝Docker要求內(nèi)核版本不低于3.10,centos7滿足最低內(nèi)核要求,這點(diǎn)需要注意。
安裝Docker
# 卸載舊版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
# 使用yum安裝
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
### 如果因?yàn)閲鴥?nèi)網(wǎng)絡(luò)安裝不上,可以設(shè)置使用國內(nèi)源
sudo yum-config-manager \
--add-repo \
https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce
.repo
# 官方源
# $ sudo yum-config-manager \
# --add-repo \
# https://download.docker.com/linux/centos/docker-ce.repo
# 更新 yum 軟件源緩存,并安裝 docker-ce
sudo yum makecache fast
sudo yum install docker-ce
# 在測試或開發(fā)環(huán)境中 Docker 官方為了簡化安裝流程,提供了一套便捷的安裝腳本,CentOS 系統(tǒng)上可以使用這套腳本安裝
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun
# 啟動 Docker CE
sudo systemctl enable docker
sudo systemctl start docker
# 測試 Docker 是否安裝正確
docker run hello-world
使用Docker
# 列出鏡像(頂層鏡像)
docker image ls
# 顯示虛懸鏡像
docker image ls -f dangling=true
# 刪除虛懸鏡像
docker image prune
# 列出包括中間層鏡的所有鏡像
docker image ls -a
# 從 Docker 鏡像倉庫獲取鏡像
docker pull [xxx]
# 運(yùn)行指定鏡像(新建并啟動容器)
# 1
docker run [xxx]
# 2 命名為新的服務(wù)為 web2 ,并且映射到 81 端口
docker run --name [容器名] -d -p 81:80 [<倉庫名>[:<標(biāo)簽>]]
# 刪除鏡像
docker image rmi [xxx]
# 強(qiáng)制刪除鏡像
docker image rm -f [xxx]
# 將容器制作成鏡像
# 標(biāo)準(zhǔn)格式
# docker commit [選項(xiàng)] <容器ID或容器名> [<倉庫名>[:<標(biāo)簽>]]
docker commit --author "can <helloyoucan@163.com>" --message "修改了網(wǎng)頁內(nèi)容" webserver nginx:v2
# 查看鏡像的歷史記錄
docker history [<倉庫名>[:<標(biāo)簽>]]
# 使用Dockerfile構(gòu)建鏡像
# 格式
docker build [選項(xiàng)] <上下文路徑/URL/->
# 在Dockerfile文本文件所在的目錄下執(zhí)行命令 最后的‘.’是當(dāng)前目錄的意思
docker build -t nginx:v3 .
# 查看容器列表
# 1
docker container list -a
# 2
docker ps
# 以交互式終端進(jìn)入xxx容器
docker exec -it [xxx] bash
# 退出容器
exit
# 刪除容器
docker rm [id]
# 刪除運(yùn)行中容器
docker rm -f [id]
# 查看容器的修改
docker diff [xxx]
# 新建并啟動容器
docker run [xxx]
# 啟動容器
docker container start [xxx]
# 后臺運(yùn)行容器
docker run -d [xxx]
# 查看容器輸出內(nèi)容
docker container logs [id|names]
# 終止容器
docker container stop
# 導(dǎo)出容器
docker export [xxx] > [xxxx.xxx]
# 導(dǎo)入容器
# 1
cat [xxxx.xxx] | docker import - [xxxx:tag]
# 2
docker import [url]
# 刪除容器
# 1.終止中的容器
docker container rm [xxx]
# 2.運(yùn)行中的容器
docker container rm -f [xxx]
# 清除所有處于終止?fàn)顟B(tài)的的容器
docker container prune