安裝
# step 1: 安裝必要的一些系統工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加軟件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新並安裝 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# 注意:
# 官方軟件源默認啓用了最新的軟件,您可以通過編輯軟件源的方式獲取各個版本的軟件包。例如官方並沒有將測試版本的軟件源置爲可用,你可以通過以下方式開啓。同理可以開啓各種測試版本等。
# vim /etc/yum.repos.d/docker-ce.repo
# 將 [docker-ce-test] 下方的 enabled=0 修改爲 enabled=1
#
# 安裝指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
# Loading mirror speeds from cached hostfile
# Loaded plugins: branch, fastestmirror, langpacks
# docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
# docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable
# docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
# Available Packages
# Step2 : 安裝指定版本的Docker-CE: (VERSION 例如上面的 17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]
docker version
啓動
systemctl enable docker.service
systemctl start docker.service
鏡像
##搜索鏡像
docker search centos7
##鏡像加速地址-阿里雲 選中鏡像加速器,然後執行命令
https://cr.console.aliyun.com/?spm=5176.1971733.0.2.f41b5aaambME9y#/accelerator
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://zzzzzzzzzzzzy.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
##獲取鏡像
docker pull centos
##運行容器
docker run -it centos /bin/bash
##查看鏡像
docker images
##刪除鏡像
docker rmi imageID
##導出鏡像
docker save centos > /opt/centos.tar.gz
##導入鏡像
docker load < /opt/centos.tar.gz
##運行1 啓動一個容器,執行 echo,然後關閉 加 -d 以守護進程的方式啓動
docker run centos /bin/echo "123"
##運行2 啓動一個終端,進行交互 --name 名字 -i 標準輸入打開 -t 分配一個僞終端
##退出的時候,想再繼續運行 用 CTRL+P+Q
docker run --name he -it centos /bin/bash
##標準操作
檢查本地是否存在指定的鏡像,不存在就從公有倉庫下載
利用鏡像創建並啓動一個容器
分配一個文件系統,並在只讀的鏡像層外面掛在一層可讀寫層
從宿主主機配置的網橋接口中橋接一個虛擬接口到容器中去
從地址池配置一個ip地址給容器
執行用戶指定的應用程序
執行完畢後容器被終止
##運行的容器
docker ps -a
##啓動已經關閉的容器
docker start CONTAINER ID
docker stop CONTAINER ID
##刪除容器 -f 刪除正在運行的
docker rm CONTAINER ID
##日誌
docker logs ${container_id}
##參數
docker -p ip:端口:端口 -e 環境變量 -v 本地目錄:容器目錄:rw/ro --volumes-from 容器名字 掛載該容器的數據卷
--link 容器名字:鏈接別名
##登錄
docker exec -it web /bin/bash
支持ssh的鏡像
docker run -itd centos /bin/bash
docker attach dedabba9293e
yum install openssh-server net-tools vim -y
ssh-keygen -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key
mkdir -p /var/run/sshd
/usr/sbin/sshd -D &
sed -ri 's/session required pam_loginuid.so/#session required pam_loginuid.so/g' /etc/pam.d/sshd
cat >> /opt/run.sh <<EOF
#!/bin/bash
/usr/sbin/sshd -D &
EOF
chmod +x /opt/run.sh
passwd
docker commit dedabba9293e sshd
docker run --name ssh1 -p 10022:22 -itd sshd /opt/run.sh