遇到錯誤

rm -f /var/run/yum.pid
原理
docker是利用Linux內核虛擬機化技術(LXC),提供輕量級的虛擬化,以便隔離進程和資源。LXC不是硬件的虛擬化,而是Linux內核的級別的虛擬機化,相對於傳統的虛擬機,節省了很多硬件資源。
在CentOS6.8是可以支持docker,但是有些特性無法使用,因此至少使用3.8的內核版本,建議是使用3.10版本以上。國內生產環境很多都是使用CentOS,所以一般使用CentOS7即可。
當然如果是Ubuntu/Debian/Deepin系列的發行版本也是支持的。

0x01 安裝docker-ce
操作系統:CentOS 7.6.1810
軟件源:阿里雲鏡像(在阿里雲鏡像站上面可以找到docker-ce的軟件源,使用國內的源速度比較快)
如果沒有物理機,可以先使用虛擬機進行學習。操作系統安裝,跳過(網上教程很多)。
1、安裝依賴
docker依賴於系統的一些必要的工具,可以提前安裝。
yum install -y yum-utils device-mapper-persistent-data lvm2
2、添加軟件源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、安裝docker-ce
yum clean all yum makecache fastyum -y install docker-ce
4、 docker安裝中會遇到一些問題:
只能啟動client,無法啟動server
原因 :公鑰未安裝,key沒有導入
解決辦法如下:
[root@localhost ~]# wget https://get.docker.com/gpg
[root@localhost ~]# rpmkeys --import ./gpg [root@localhost ~]# systemctl start docker.service [root@localhost ~]# docker version
5、啟動並加入開機啟動
systemctl start docker
systemctl enable docker
6、查看版本信息 docker -version
0x02 下載python環境
安裝python可能用到的依賴:
[root@ghz ~]# yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
安裝 wget 命令:
yum -y install wget
wget命令安裝成功后就通過wget命令下載python源碼包
wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
這個可以看到這個文件后綴名是tgz,我們需要解壓這個文件
tar -zxvf Python-3.6.5.tgz
進入解壓的目錄
進行編譯,指定編譯后生成文件的位置
./config --prefix=usr/local/python3
查看版本
python -v
0x03 docker-compose 的安裝及使用
- Docker Compose 是一個用來定義和運行復雜應用的 Docker 工具。使用 Docker Compose 不再需要使用 shell 腳本來啟動容器。(通過 docker-compose.yml 配置)
- 安裝
- 可以通過修改 URL 中的版本,自定義您需要的版本。
sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
- 卸載
sudo rm /usr/local/bin/docker-compose
0x04 下載vulhub環境
git clone https://github.com/vulhub/vulhub.git
直接下載地址:https://github.com/vulhub/vulhub/archive/master.zip
解壓 unzip vulhub-master
運行命令: docker-compose up -d (推薦)或者 docker-compose build 運行命令 docker-compose up -d //安裝此漏洞環境
docker ps //查看運行服務端口
訪問ip:port即可看到web網頁
測試完畢之后,使用
docker-compose down
即可結束服務,使環境變為初始狀態。
上述命令會執行如下幾個動作:
關閉正在運行的容器
刪除所有相關容器
移除NAT(docker-compose在運行的時候會創建一個NAT網段)