--- title: 学习周刊-总第158期-2024年第19周 date: 2024-05-09 22:05:51 permalink: /pages/89722e/ categories: - 周刊 - 学习周刊 - 2024年 tags: - feed: enable: true description: 学习周刊-总第158期,kpexec一个能够以root用户exec到普通用户运行的k8s容器中 --- ### 0 ,前言 周刊维护在:[https://github.com/eryajf/learning-weekly](https://github.com/eryajf/learning-weekly) 欢迎投稿,推荐或自荐项目 /文章 /博客,请提交 issue 。 周刊核心为运维周刊,还会侧重 Go 语言生态,Vue 相关技术生态的项目,以及 GitHub 上优秀项目或经验。 你也可以在我的博客 [https://wiki.eryajf.net/learning-weekly/](https://wiki.eryajf.net/learning-weekly/) 查看汇总周刊。 🔥 有不少人想单独从博客通过 RSS 订阅周刊的更新,现在它来了,你可以使用这个[🔗 链接](https://wiki.eryajf.net/learning-weekly.xml)进行订阅。 ### 1,优秀项目 --- - 项目地址:[pdm](https://github.com/pdm-project/pdm) - 项目说明:一个现代的 Python 包管理器,支持 PEP 最新标准。特性如下: - 一个简单且相对快速的依赖解析器,特别是对于大的二进制包发布。 - 兼容  [PEP 517](https://www.python.org/dev/peps/pep-0517)  的构建后端,用于构建发布包(源码格式与 wheel 格式) - 灵活且强大的插件系统,功能强大的用户脚本 - 支持从 indygreg's python-build-standalone 安装 Python。 - 像 pnpm 一样的中心化安装缓存,节省磁盘空间 --- - 项目地址:[uv](https://github.com/astral-sh/uv) - 项目说明:一个非常快的 Python 包安装程序和解析器,用 Rust 编写。设计为通用工作流程`pip`和工作流程的直接替代品`pip-tools`。 --- - 项目地址:[kpexec](https://github.com/ssup2/kpexec) - 项目说明:kpexec 是一个 K8s cli,它可以在没有 SSH 的情况下以高权限(root)在容器中运行命令。它在与目标容器相同的节点上运行高特权容器,并加入目标容器的命名空间(IPC、UTS、PID、net、mount)。这对于经常需要以高权限执行命令的调试很有用。此外, kpexec 有一个工具模式,它将有用的调试工具添加到被调试的容器中。当目标容器中缺少必要的调试工具时,工具模式非常有用。它的实现原理如下图: ![](https://t.eryajf.net/imgs/2024/04/1712499280014.png) 上图展示了 kpexec 的运行流程。首先,kpexec 从 K 8 s API Server 获取目标 pod 的信息,并找出目标 pod 存在于哪个 Node。然后,kpexec 在目标 pod 所在的节点创建一个 cnsenter pod 并执行 cnsetner。 cnsenter 通过 CRI(Container Runtime Interface)从容器运行时获取目标容器的 pid 和根目录信息。然后 cnsetner 根据获取到的信息在目标容器中执行命令。 --- - 项目地址:[hummingbird](https://github.com/leibnizli/hummingbird) - 项目说明:又一款图片压缩工具,支持多平台。 ![](https://t.eryajf.net/imgs/2024/04/1712589304860.png) --- - 项目地址:[WeChatTweak-macOS](https://github.com/sunnyyoung/WeChatTweak-macOS) - 项目说明:比较理想的 Mac 微信双开工具。通过如下命令即可安装: ```sh # 安装cli brew install sunnyyoung/repo/wechattweak-cli # 安装 tweak sudo wechattweak-cli install # 安装/更新 sudo wechattweak-cli uninstall # 卸载 ``` --- - 项目地址:[pin-tabs](https://github.com/caijinyc/pin-tabs) - 项目说明:一款浏览器扩展,帮助你从项目(或工作区)的角度管理标签页。 ![](https://t.eryajf.net/imgs/2024/04/1712933282611.gif) --- - 项目地址:[icegl-three-vue-tres](https://github.com/hawk86104/icegl-three-vue-tres) - 项目说明:一款让你的三维可视化项目快速落地の开源框架 🎊🎉🎉 永久开源,免费商用 ![](https://t.eryajf.net/imgs/2024/04/1712933585762.png) --- ::: note 申明 **原创文章,未经授权,严禁转载,侵权必究!此乃文中随机水印,敬请读者谅解。** ::: right Copyright [二丫讲梵](https://wiki.eryajf.net) 版权所有 ::: ### 2,优秀文章 --- - [alpine 镜像时区调为 Asia/Shanghai 后因 TZ 与 apk del tzdata 导致不生效](https://www.cnblogs.com/flipped/p/15808681.html) - 如题,另外推荐参考直接使用:[从 DockerHub 到阿里云镜像仓库:整理汇总我同步过的 docker 镜像(公开可匿名 pull)](/pages/0792bd/) 里边的镜像,我已最好封装。 --- - [kubectl krew 离线安装插件](https://www.jianshu.com/p/4238dd05f143) - 如题:离线安装插件的方式。 --- ### 3,优秀博客 --- - 博客地址:[vue 管理平台集中地](https://vue-admin.cn/) - 简单说明:汇集整理了许多与 vue 相关的开源项目。 --- - 项目地址:[Ahrefs Blog zh 全部文章列表](https://xuxuyu.notion.site/1468d1c9ea65473b934917d8ab25979b?v=dcaec075d4b34a8e8af5be0bc9a259a0) - 项目说明:这个页面,汇集了各种网站 SEO 方面的姿势。 ---