使用 Cloudflare Workers自建完全免费Docker镜像服务
使用Cloudflare Workers自建完全免费Docker镜像本方法 不需要服务器 也不需要域名自月初docker镜像被封禁之后,国内的镜像源也同步都停掉了。国内服务器拉取镜像变得完全不方便。目前有几种方法挂代理, 给配置文件增加代理proxy配置;自建转发服务器,配置文件增加registry-mirrors镜像源:自建服务器,给nginx配置反向代理, 如crproxy;蹭Cloudflare Workers免费资源,手动写请求转发代码,如cloudflare-docker-proxy最终我选择了Cloudflare Workers方式,因为这个方法完全不需要服务器,甚至也不需要域名,只需要注册一个cloudflare帐号就能用。我真的服了cloudflare也是太大方了,真的什么都给大家免费用。..
更多ChatGPT Plus 单账号共享合租服务
Foreword 单个ChatGPT Plus 账号共享合租,各自会话独立分割,就好像一个人使用一样,方便给一个组织或者多人使用。 CWS 源于chatgpt-web-share项目,适用于个人、组织或团队的 ChatGPT 共享方案。共享一个 ChatGPT Plus 账号给多人使用,提供完善的管理和限制功能。 https://github.com/chatpire/chatgpt-web-share 部署 新建目录 cd ~ mkdir cws && cd cws mkdir -p data/config 配置初始密码 export MONGODB_PASSWORD=password # MongoDB 密码 export INITIAL_ADMIN_PA..
更多一日一技:如何安全运行别人上传的Python代码?
写后端的同学,有时候需要在网站上实现一个功能,让用户上传或者编写自己的Python代码。后端再运行这些代码。涉及到用户自己上传代码,我们第一个想到的问题,就是如何避免用户编写危险命令。如果用户的代码里面涉及到下面两行,在不做任何安全过滤的情况下,就会导致服务器的Home文件夹被清空。12import osos.system('rm -rf ~/*')有人想的比较简单,直接判断用户的代码里面有没有os.system、exec、subprocess……这些危险关键词不就可以了吗?这种想法乍看起来没有问题,但细想下,就会发现非常天真。如果用户的代码像下面这样写,你又要如何应对?123456789import requestscode = requests.get('https://www.kingname.in..
更多Podman 容器管理工具
介绍Podman是一个用于在Linux系统上构建、管理和运行OCI标准容器的CLI工具,是Docker的直接替代品。 由红帽主导,与开源社区一起开发。在RHEL8开始预装并替代Docker。命令上与Docker并无区别。 主要特点是不需要守护进程,可以支持非root用户运行容器,提高了安全性和可访问性。 本教程也适用于RHEL其他衍生版本,如Rocky Linux。 安装RHEL8-9安装1234567891011121314dnf install podman podman-docker# 安装podman及docker的命令兼容程序。systemctl enable --now podman# 启动并设置开机启动。podman run hello-worlddocker run hello-worl..
更多Shadowsocks with v2ray-plugin for Doprax
使用Doprax搭建免费的Shadowsocks服务。有现成的V2ray for Doprax方案。但是我一直是用Shadowsocks的,也不想换客户端。而且一看v2ray,和Shadowsocks相比,真的太复杂了,配置一大堆,看了文档也非常混乱,一比较就完全放弃。于是想研究ss能不能也整一个。先说结论:使用v2ray-plugin插件将shadowsocks流量伪装成http协议,穿透Cloudflare网关,使用隧道转发到服务端。客户端使用安装了对应插件的客户端连接到服务端。并且可以支持v2ray客户端例如V2rayU连接本来想尝试使用simple-obfs,因为ios的免费客户端上基本上内置这个,后来在成功实现v2ray-plugin方式之后,又继续研究了很久,发现由于Cloudflare的影响..
更多Docker+Prometheus+Grafana监控VPS运行状态
Prometheus是一个灵活的时间序列数据库和监控系统,有多个监控组件可用。Grafana是用于展示数据的平台。一起使用即可全方位监控VPS主机运行状态。prometheus和grafana为简化安装步骤,这里直接使用docker.效果图安装首先你要安装docker/docker-compose:1234567apt -y updateapt -y install curlcurl -sSL https://get.docker.com/ | shsystemctl start dockersystemctl enable dockercurl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`un..
更多HomeLab 玩法简单分享
大学毕业之前一个冲动买了台式机,又一个冲动买了台 Linux 主机。到现在它已经运行了四年多了,简单分享下自己的玩法。 背景 毕业之前在公司附近租了房,再加上受到了网络的蛊惑,于是陷入了“买一台 NAS 来大幅提高生活质量”的念头之中。看了很多成熟的 NAS 方案(比如群辉或威联通),最后还是在高昂的价格面前望而却步。 当时的我,傻乎乎地认为品牌 NAS 的平台只是“SMB + RAID + 媒体服务器”而已,那么既然成熟的方案那么贵,为什么不搞个 Linux 自己折腾呢?脱离了平台的束缚,反而可能有更多的可能性。 最后,我决定自己买硬件搭一台 Linux 主机,做一个 HomeLab. 硬件选型 选择主机硬件的时候考虑了自己的需求,大致如下: 价格便宜:我只是个穷学生,看他们玩虚拟化的都上了 E..
更多为什么 Kubernetes 要替换 Docker
为什么这么设计(Why’s THE Design)是一系列关于计算机领域中程序设计决策的文章,我们在这个系列的每一篇文章中都会提出一个具体的问题并从不同的角度讨论这种设计的优缺点、对具体实现造成的影响。如果你有想要了解的问题,可以在文章下面留言。Kubernetes 是今天容器编排领域的事实标准,而 Docker 从诞生之日到今天都在容器中扮演着举足轻重的地位,也都是 Kubernetes 中的默认容器引擎。然而在 2020 年 12 月,Kubernetes 社区决定着手移除仓库中 Dockershim 相关代码1,这对于 Kubernetes 和 Docker 两个社区来说都意义重大。图 1 - Dockershim相信大多数的开发者都听说过 Kubernetes 和 Docker,也知道我们可以使用..
更多由 TT-RSS 解析数据库地址失败引出的一个问题
水一篇文章,主要用来告诫自己认真看文档。🌚 背景 下午随手在树莓派上升级了一下 TT-RSS 的镜像,然后它当场爆炸,看了容器日志告诉我 PHP 无法解析数据库的域名 database.postgres. 尝试解决 进到容器里尝试手动解析一下,但是报错 nslookup: clock_gettime(MONOTONIC) failed. 用自己的另一台运行 Debian testing 的 x86 机器运行了一下,无法复现这个问题。 Google 了一下找到 Alpine 的一个 issue,简单看了一下发现是 Alpine 3.13 升级了 musl,使用了新的系统调用 clock_gettime64. 在容器里跑了下 date,结果如下: 12$ docker run --rm -it alp..
更多《Docker 实践》阅读笔记
这几天看了《Docker 实践》,写了一点自己不知道或者想记录下来的内容。这是一份笔记,但不是一份基础教程。 1. 第一部分:Docker 基础 Docker 的优势 通过将环境打包成镜像的方式来标准化系统环境,需要使用这个环境的人可以直接使用镜像,无须重头配置环境。所以,Docker 在很多情况下可以作为虚拟机的替代使用。 对 Linux 用户而言,Docker 镜像没有依赖,所以非常适合用于打包软件。 关键概念:镜像和容器 简而言之,容器运行着由镜像定义的系统,而镜像本质上是一个文件系统,由一个或多个层加上一些 Docker 的元数据组成。 我们可以从一个镜像中生成多个容器,这些容器完全隔离,其行为不会相互影响。 一个巧妙的类比:镜像和容器的关系,就相当于类和对象的关系。 创建 Docke..
更多