在Kali(Debian)系统上安装dockerdocker-compose并给docker配置socks代理

news/2024/9/21 22:19:49/文章来源:https://www.cnblogs.com/lrui1/p/18353634

在Kali(Debian)系统上安装docker&docker-compose并给docker配置socks代理

安装docker

方法一:使用kali官方的安装方式(经测试,安装的docker版本为20.0)

参考链接如下

Installing Docker on Kali Linux

由于现在docker hub的镜像站都挂了(可能?),为了方便的配置代理拉取镜像,推荐使用方法二来安装docekr,可以通过编辑/etc/docker/daemon.json文件来设置代理地址,个人感觉较为方便

方法二:

1、对APT软件包换源(以清华大学镜像站为例)

打开清华大学镜像站kali软件仓库帮助

复制换源地址

image.png

打开终端,执行sudo vim /etc/apt/source.list

image.png

如上图,将官方源注释掉,将换源地址复制进去(或者全部删除只保留换源地址)

执行sudo apt update更新缓存

2、按顺序执行以下命令

# 卸载docker
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do apt-get remove $pkg; done# 安装依赖
apt-get update
apt-get install ca-certificates curl gnupg# 信任 Docker 的 GPG 公钥并添加仓库
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg# 添加docker源
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian \bookworm stable" | \tee /etc/apt/sources.list.d/docker.list > /dev/null# 更新软件源
apt-get update# 安装Docker
apt-get install docker-ce docker-ce-cli containerd.io

注意:在添加docker源那一步中,由于参考的是清华镜像站中Debian的安装方式,它用的是一个命令输出,Kali通过那个命令没输出对应Debian的发行版名称,所以我们只能自己去查,看看自己kali基于的是Debian的哪个发行版,如果是在Debian上面安装可以直接复制清华大学镜像站中的命令,我使用的是kali 2024.2 经测试,使用bookworm发行版可以正常使用

官方说明说kali是基于Debian Testing 一般就是最新的吧,可以问GPT或者看看更新历史啥的

3、测试docker安装是否成功

执行以下命令 docker --version

image.png

有正常回显就是安装成功了

安装docker-compose

网络环境比较好的可以直接执行以下命令

wget -O /usr/local/bin/docker-compose https://github.com/docker/compose/releases/download/v2.29.1/docker-compose-linux-x86_64
chmod +x /usr/local/bin/docker-compose 

如果网络环境不太好,那就自己先下载到本地,上传到Linux,移动到/usr/local/bin 将名字改为docker-compose,再赋予执行权限即可

执行docker-compose

image.png

有回显说明安装成功

给docker配置代理

执行sudo vim /etc/docker/daemon.json配置代理地址

{"proxies": {"http-proxy": "socks5://x.x.x.x:7897","https-proxy": "socks5://x.x.x.x:7897"}
}

注意:这种配置代理的方式需要docker版本比较新(貌似是>24.0? 忘记了),如果用方法一安装的docker可能要参考别的配置代理的方法了

按顺序执行以下命令

sudo systemctl daemon-reload
sudo systemctl restart docker
docker run --rm hello-world

image.png

能正常拉取并回显说明配置成功

给docker配置镜像

由于某种原因,docker hub镜像站很多都挂了,这边给一个参考链接看看大伙能不能找到一些还能用的镜像站吧

https://gist.github.com/y0ngb1n/7e8f16af3242c7815e7ca2f0833d3ea6

如果真找不到镜像站,而且自己的网络环境也不太好,那就只能问问周围能用docker的人它们是怎么配置的了(笑) =w=

参考链接

清华大学镜像站

Docker — 从入门到实践

添加docker proxy配置文件

Kali 与 Debian 的关系

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/781333.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

bugbountyhunter scope BARKER:第八滴血 存储型 Storage Cross-Site Scripting XSS SVG文件上传 报告

登录后来到home页面,留言中存在一个Attach image检查 xss payload:https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/XSS Injection#xss-in-files使用SVG进行图片上传,发现SVG文件上传成功并返回图片地址poc:https://cfceb12f2bfd-sec875.a.barker-social.…

USB Type-C的工作原理与技术分析

USB TYPE-C更加深入的应用,是从USB3.1开始的,这是因为从USB3.1开始,USB的功能开始变得更加丰富起来。 USB 3.1基本规格有SS字样的代表支持PD,有SS和10的USB标志代表支持USB3.1及PD2.0 历代USB输出功率及标志比较本图来源于:https://www.datapro.net/techinfo/what_is_usb_…

CPU的功能和基本结构

CPU的功能CPU的基本结构运算器控制器CPU中的寄存器 用户可见的寄存器

旧物利用 - 将机顶盒改造为一台Linux开发机!

家里的机顶盒淘汰下来,博主想要物尽其用,看看是否能将其改造为一台Ubuntu"开发机",故开始倒腾前言 机顶盒型号:移动魔百盒CM201-2(CH),芯片组: hi3798mv300(hi3798mv3dmm),其他型号类似 理论上适用于以下SOC:Hi3798Mv100 / Hi3798Cv200 / Hi3798Mv200 / Hi3…

7-3FM模型

FM算法全称为因子分解机 (FactorizationMachine)。它是广告和推荐领域非常著名的算法,在线性回归模型上考虑了特征的二阶交互。适合捕捉大规模稀疏特征(类别特征)当中的特征交互。FM算法全称为因子分解机 (FactorizationMachine)。 它是广告和推荐领域非常著名的算法,在线性回…

这是DDD建模最难的部分(其实很简单)

本文书接上回《为了落地DDD,我是这样“PUA”大家的》 ,欢迎关注我的同名公众号。 https://mp.weixin.qq.com/s/DjC0FSWY1bgJyLPIND5evA什么是最重要的事如果你认真读过前面的文章,那么一定知道我们的核心逻辑:领域驱动是一种价值观,这个价值观是:“领域(边界)”的明确是…

CSP17

请注意:题目背景与题目可能没有关系第一题,性质题,找到序列的最大值与最小值,我们发现如果只有正数的话和只有负数的话都很好处理,正数正序处理类似前缀加,负数后缀加,那如果正负都有,该怎么办呢?其实我们可以吧序列全变为正的或负的吧,但是需要比较一下最大值最小值,…

丰富有趣的颜色空间

颜色空间就像是一套套颜色语言,其将视觉上的颜色以数字的形式定义表示,使其能够准确描述某个颜色简介 颜色是视觉的表现,而自然界的颜色是多姿多彩的,如果让我们用语言描述一个自然界的颜色,有些人可能会用红橙黄绿蓝靛紫,外加一些修饰词,但它不太能够准确的描述一个颜色…

Struts2基础1--创建一个Struts2 Web应用程序

Struts2不仅仅是Struts1 的升级版本,更是一个全新的Struts架构,是当前较为普及和成熟的基于MVC设计模式的Web应用程序框架,并在RIA(Rich Internet Applications)Web应用程序开发中得到了广泛应用,成为最好的Web框架之一。本文将通过详细的步骤来说明如何下载获取相关资源…

STM32学习记录(九):RTC

RTC框图 实时时钟(Real-time clock: RTC)是一个独立的计时器。RTC提供一组连续运行的计数器,可以与合适的软件一起使用,以提供时钟日历功能。可以写入计数器值以设置系统的当前时间/日期。可以选择以下三种作为RTC时钟源:HSE时钟进行128分频 LSE振荡器时钟 LSI振荡器时钟有关…

炒鸡好用的Markdown语法

简介 Markdown是一种轻量级标记语言,它最初由John Gruber和Aaron Swartz在2004年共同创建,可以通过简单、纯文本的语法,快速构建格式化、排版精美的文档。其可与HTML混编,可导出为HTML、PDF、Word等格式的文件 Markdown可以让作者更多地关注内容本身而非格式排版。同样的内…

Arweave区块链私有化部署

Arweave区块链私有化部署Arweave区块链主打数据永久存储,即保存在区块链的数据永久存在、不可篡改。公链主网络arweave.N.1在2024年8月11日累计产生了148万个区块(见下截图所示),区块还在不断产生,大约2分钟产生一个区块。Arweave区块链可以在Ubuntu 22.04LTS或Ubuntu 24.04…