apt直接安装是最好的,因为apt源中的其他docker相关组件,也是与docker匹配的版本。
apt-get install docker docker-compose
下载链接:https://download.docker.com/linux/debian/dists/
选择对应的debian版本(kali2.0是jessie)进入pool/stable/再选相应平台,再选想要的版本下载。
进入安装包所在目录执行安装:
dpkg -i docker-ce_17.03.1~ce-0~debian-jessie_amd64.deb
编缉/etc/docker/daemon.json,然后重启docker即可:
cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
EOF
service docker restart
也可使用阿里云Docker加速器或Daocloud加速器。这两个加速器需要注册登录点击加速器页面获取且每个账号的不一样;可以认为中科大源是不需要注册的公有加速器而阿里和Daocloud的是专有加速器。
hello-world是安装包默认带的镜像,可以通过看能否运行该镜像来判断docker是否能成功运行。
不过好像apt安装的docker并没带该镜像,其实也无关紧要,service docker start没问题一般都没问题。
service docker start
docker images
docker run hello-world
安装的docker默认只有一个用于测试的hello-wolrd镜像,docker search命令查找docker pull命令安装镜像。以httpd为例:
docker search httpd
docker pull httpd #pull的镜像不是下到当前目录而是统一放到/var/lib/docker各文件夹内
(默认镜像仓库为Docker Hub(https://hub.docker.com/)可能会比较慢,切换国内源见下文3.4。)
docker images #查看本地已有镜像
docker run -i -t httpd /bin/bash #运行镜像并进入
docker run -d -p 80:8080 httpd #后台运行镜像,宿主机80端口映射到容器8080端口
docker exec -it [container-id] /bin/bash #进入已有容器
docker stop httpd #关闭镜像
docker ps #查看当前正在运行的镜像
docker ps -a #查看包括已停止的容器
docker rm CONTAINER_ID #删除容器。容器停止后并未删除磁盘未释放,可通过rm来删除容器释放磁盘
对于镜像的一些信息,比如监听的端口、控制台的用户名密码等我们都是不知道的,这些信息可以到docker hub上搜索对应项目并进入进行查找。
docker hub地址:https://hub.docker.com/
收集了dokcer漏洞环境的github项目(真正环境在Docker Hub上github上的项目只是说明文件,Docker和github是没什么必然关系的这点要清楚):