更新系統軟件包
yum update
安裝docker的yum源
tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF
執行安裝
yum -y install docker-engine
服務啓、停、查、重啓
service docker start/stop/status/restart
chkconfig docker on
關閉SELinux
# 臨時關閉SELinux
setenforce 0
# 臨時打開SELinux
setenforce 1
# 開機關閉SELinux
編輯/etc/selinux/config文件,將SELINUX的值設置爲disabled
Hello,World
docker run hello-world
添加docker Hub國內鏡像
#如果沒有此文件,則新建一個
vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
常用docker 命令
docker build --rm=true . 構建鏡像
docker pull ${IMAGE} 安裝鏡像
docker images 顯示已經安裝的鏡像
docker images --no-trunc 顯示已經安裝鏡像的詳細內容
docker rmi ${IMAGE_ID} 刪除指定鏡像
docker rmi $(docker images | grep “^” | awk “{print $3}”) 刪除所有沒有標籤的鏡像
docker rm $(docker ps -aq) 刪除所有的鏡像
docker rmi $(docker images --quiet --filter "dangling=true") 刪除未使用的鏡像
docker run 運行容器
docker run -d 後臺運行容器
docekr run -v /home/zyj2/html:/opt/ci123/www/html 掛載文件到容器內
docker run --name="zyj" 爲容器指定一個名稱zyj
docker run --link=[] 添加鏈接到另一個容器
docker ps 顯示正在運行的容器
docker ps -a 顯示所有的容器
docker stop ${CID} 停止指定容器
docker stop docker ps -q 停止所有正在運行的容器
docker ps -a --filter "exited=1" 顯示所有退出狀態爲1的容器
docker rm ${CID} 刪除指定容器
docker ps -a | grep wildfly | awk '{print $1}' | xargs docker rm -f 使用正則表達式刪除容器
docker rm -f $(docker ps -a | grep Exit | awk '{ print $1 }') 刪除所有退出的容器
docker rm $(docker ps -aq) 刪除所有的容器
docker inspect --format '{{ .NetworkSettings.IPAddress }}' ${CID} 顯示指定容器的IP
docker attach ${CID} 進入容器
docker exec -it ${CID} bash 進入容器打開一個shell
docker ps | grep wildfly | awk '{print $1}' 通過正則表達式查找容器的鏡像ID
docker cp /root/test.txt edhjhs278s:/root/ 將當前操作系統(CentOS)家目錄(root)下的文件test.txt拷貝到容器id爲ecef8319d2c8的家目錄(root)文件夾下
docker cp ecef8319d2c8:/root/test.txt /root/ 將容器id爲ecef8319d2c8的家目錄(root)文件夾下的test.txt拷貝到當前操作系統(CentOS)家目錄(root)下
docker阿里加速
2、複製自己的docker配置
cp -n /lib/systemd/system/docker.service /etc/systemd/system/docker.service
3、編輯/etc/systemd/system/docker.service內容如下(注意修改)
[Service]
ExecStart=/usr/bin/dockerd-current \
--registry-mirror=https://********.mirror.aliyuncs.com \
4、重啓docker
systemctl daemon-reload
systemctl restart docker
鏡像操作
搜索鏡像
docker search mysql:5.7
從docker hub下載鏡像到本地
docker pull centos
列出所有本地鏡像
docker images
刪除本地鏡像
docker rmi centos
如果已經有基於此鏡像的容器,需要先刪除相應的容器再刪除鏡像。或者通過-f參數強制刪除鏡像,如docer rmi -f centos。
爲鏡像打tag
docker tag a653cd3f70bf cheyo/myapp:v2
安裝docker-compose
安裝pip
#1、安裝python-pip包
yum -y install epel-release
#2、安裝python-pip包
yum install python-pip
#3、升級pip
pip install --upgrade pip
#4、安裝docker-compose
pip install docker-compose