> 技术文档 > kali安装docker并且成功启动容器2024最新版(超详细!)

kali安装docker并且成功启动容器2024最新版(超详细!)


前言

        最近,在搭建vulhub靶场的时候,因为很久没有用过本地虚拟机kali搭建了,所以在容器启动的时候遇到了很多抽象的问题,一生气,直接把kali给卸载了,于是就开始了一天苦逼的从安装虚拟机kali开始的一系列好久没有碰到的问题,因此坐了一天的牢,痛定思痛,为了防止有其他人像我这样走了很多弯路,所以写这篇,方便以后我再遇到这种情况去解决,也方便大家。

        只是两个人相处,那么喜欢一个人,可能会觉得她所有都好,但是以后在一起了,就要学会喜欢她的不好。 --烽火戏诸侯 《剑来》

安装kali并且切换到root权限

这一部分可以看我之前的文章,这里给大家附上链接

kali虚拟机安装教程(附加添加root用户)_kail安装如何使用root-CSDN博客

安装docker

        首先,这里给大家声明一下,之前我的文章是介绍如何使用国内源,去进行相关安装,这里我选择使用官网的进行下载,所以需要大家提前准备好可以访问外网的流量,在来看我的步骤

apt-get update  #从软件源获取最新软件包索引文件

apt-get upgrade  #用于软件包升级的命令

如果大家流量不是很稳定

就可能需要

apt-get update --fix-missing  #用于修复软件包安装或升级过程中可能出现的软件包缺失问题的命令

接下来就可以安装docker以及docker-compose

apt install docker.io

apt install docker-compose

安装途中可能会弹出页面,直接tab 到ok 回车即可

最后,安装完毕

docker -v #检查版本

systemctl status docker #查看docker的systemd配置位置

systemctl start docker #启动docker服务

systemctl enable docker #设置开机自启

输入docker-compose 为蓝色说明安装成功

启动容器

这里我用vulhub为例,首先大家如果想要vulhub的压缩包,这里推荐去gethub去搜索,不给大家提供了。

cd vulhub #进入寻找想要开启的容器

cd weblogic/ssrf

docker-compose up -d #后台运行环境

docker ps #查看已经开启的容器

docker ps -a #查看存在的容器

这里是最理想的情况

当然还有不理想的情况

报错,容器没起来

library initialization failed - unable to allocate file descriptor table - out of memory

触发条件,执行启动命令后发现没启动成功,但是容器已经创建

解决内存不够启动失败问题

docker-compose down #删除容器 第一步

第二步 修改docker创建容器的默认ulimit配置

systemctl status docker #寻找系统文件位置

vim /usr/lib/systemd/system/docker.service #编辑此文件

第三步在ExecStart命令后加上创建容器的默认ulimit配置,如下,设置容器启动时的ulimit为65535:65535

 添加

--default-ulimit nofile=65535:65535 #记得:wq 保存

第四步

重启docker

  1. systemctl daemon-reload

  2. systemctl restart docker

最后重启容器,开启成功