============
== 白菜 ==
============
一个勤奋的代码搬运工!

K3s 快速入门指南:构建多云环境下的K3S集群

技术分享 k3s Kubernetes kubectl
K3s 是轻量级的 Kubernetes。server最低只需要512M内存即可运行。 不同账号甚至不同云服务商, 内网是不通的。所以要想办法实现跨公网的容器网络通信,保障任意一台节点上的pod能访问任意节点上的pod和service,和正常的kubernetes集群体验一致。 参考入门指南和多云解决方案,重新整理 目标:实现混合云(腾讯云服务器+甲骨文服务器+微软Azure服务器)境下的K3S集群 Server安装 # 局域网方案 curl -sfL https://get.k3s.io | sh - # 多云安装方案 curl -sfL https://get.k3s.io | sh -s - --node-external-ip=Server公网地址 --flannel-backend=wireguard-native 中国用户,可以使用以下方法加速安装: # 局域网方案 curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh - # 多云安装方案 curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -s - --node-external-ip=Server公网地址 --flannel-backend=wireguard-native --flannel-external-ip 运行此安装后: K3s 服务将被配置为在节点重启后或进程崩溃或被杀死时自动重启。 将安装其他实用程序,包括 ```kubectl```、```crictl```、```ctr```、```k3s-killall.sh``` 和 ```k3s-uninstall.sh```。 kubeconfig 文件将写入到 ```/etc/rancher/k3s/k3s.yaml```,由 K3s 安装的 kubectl 将自动使用该文件。 安装其他 Agent 节点 安装其他 Agent 节点并将它们添加到集群,请使用 K3S_URL 和 K3S_TOKEN 环境变量运行安装脚本 Read more...

Telegram 界面自定义翻译

telegram 汉化 语言包
语言包的获取方法 进入官网翻译界面 https://translations.telegram.org 点击 “Start Translating” 选择 对应语言 比如 简体中文 进入网址 https://translations.telegram.org/zh-hans/ 底部有 “Sharing Link” 在 telegram 中打开这个网址 就可以换界面语言了。 自定义界面语言的话,选择上面的 客户端类型,根据提示 编辑对应翻译内容 即可。 Telegram 中文语言包 https://t.me/setlanguage/zh-hans-beta

搭建反向代理服务:Telegram Bot Api 反向代理搭建

技术分享 nginx proxy telegram
上面一篇通过nginx和cloudflare workers 搭建的反向代理。 这一篇通过更简单的代码重下搭建个。 通过 Cloudflare Workers 搭建反向代理服务 创建 Cloudflare workers 的步骤都是一样的,代码不一样。 创建一个Worker 在首页选择Workers,若从未创建过则初始化,选择免费套餐,然后创建一个Worker。 编辑Worker内容 进入worker,点击快速编辑,将代码改为下方内容,其中hostname改为你自己的,然后点击保存部署,并可改名为例如cdn的worker。 // 这就是需要代理的网址 const hostname = "https://example.domain" // const hostname = "http://192.168.0.1" // const hostname = "https://your.domain" // const hostname = "https://your.domain/api/path" function handleRequest(request) { let url = new URL(request.url); return fetch(new Request(hostname + url.pathname,request)) } addEventListener("fetch", event => { event.respondWith(handleRequest(event.request)) }) 为域名添加DNS 添加路由,配置 指向步骤1创建的 Worker,到此等待DNS生效即可。 通过 Vercel 搭建反向代理服务 在github中新建个项目 创建一个文件,命名为 vercel.json 文件内容: { "routes": [ { "src": "/. Read more...

Telegram Bot Api 反向代理搭建

技术分享 nginx proxy telegram
由于一些原因,配置epusdt需要使用tg反向代理地址才能使用! #telegram代理url(大陆地区服务器可使用一台国外服务器做反代tg的url),如果运行的本来就是境外服务器,则无需填写 tg_proxy= 两种实现方案,根据个人喜好选择使用或发挥 Nginx反代Telegram Api 安装nginx sudo apt update && sudo apt install -y nginx 创建配置文件 nano tgapi.conf 输入一下内容并保存 server { listen 80; server_name tgapi.domain; location / { return 444; } location ~* ^/bot { resolver 8.8.8.8; proxy_buffering off; proxy_pass https://api.telegram.org$request_uri; } } 加载配置 sudo systemctl reload nginx #或 sudo nginx -s reload 测试访问 输入以下命令行,BOT_TOKEN换成自己机器人token。 curl https://tgapi.domain/bot<BOT_TOKEN>/getMe 看的机器人信息,就说明可以使用了。 配置 epusdt telegram代理url epusdt 配置(.env)参考 #telegram代理url(大陆地区服务器可使用一台国外服务器做反代tg的url),如果运行的本来就是境外服务器,则无需填写 tg_proxy=https://tgapi.domain docker 配置 nginx 参考 docker-compose. Read more...

甲骨文Vps iptables 开放端口设置

linux vps oracle iptables
在甲骨文的网页后台先开放端口 iptables 开放所有端口 sudo iptables -P INPUT ACCEPT sudo iptables -P FORWARD ACCEPT sudo iptables -P OUTPUT ACCEPT sudo iptables -F Oracle自带的镜像默认设置了Iptable规则,关闭它 sudo apt-get purge netfilter-persistent && sudo reboot 测试端口是否已经开放 附注: 强制删除规则 sudo rm -rf /etc/iptables && sudo reboot 删除oracle-cloud-agent,防止甲骨文监控 snap remove oracle-cloud-agent 检查防火墙服务状态 sudo systemctl status iptables.service sudo systemctl status netfilter-persistent.service 远程检测端口开放状态 nmap ip或域名 附注2(开放指定端口): iptables 开放指定端口 iptables -I INPUT -p tcp --dport 80 -j ACCEPT 中间的 80 为所需要开放的端口,tcp 为传输协议 Read more...

Docker 搭建MTProto协议上网

Docker mtproto
系统环境: Debian系(其他系只需要更换apt为对应系统的软件包管理工具名称即可) 安装Docker 安装Docker相关工具 sudo apt update && sudo apt -y upgrade && sudo apt install -y docker docker.io docker-compose 启动docker sudo systemctl enable docker && sudo systemctl start docker 验证是否安装成功 sudo docker run hello-world mtg v2版本 docker运行 生成密钥 sudo docker pull baicailin/mtg sudo docker run --rm baicailin/mtg generate-secret --hex trade.aliexpress.com #会看到一串ee开头的密钥,形如: eexxx44f3762c8a97d14f89df8c0174726164652e616c69657870726573732e636f6d 写入简单配置 echo "secret = \"把上面一步生成的密钥填进来\"" >config.toml echo "bind-to = \"0.0.0.0:443\"" >>config.toml 运行docker镜像命令 sudo docker run -d -v $PWD/config. Read more...

docker golang:alpine CGO 制作镜像的正确姿势

Docker Golang
当程序需要引入C/C++库(比如支持Sqlite数据库)的时候,编译环境需要打开CGO,否则打包完成后的程序就不能顺利运行(数据库初始化失败)。 这时就需要安装 build-base 配置编译环境。 参考 Dockerfile 如下: FROM golang:alpine as builder ENV CGO_ENABLED=1 WORKDIR /app COPY . . RUN apk add --no-cache --update git build-base RUN go mod tidy \ && go build -o api_client_linux ./cmd/api_client/ FROM alpine:latest as runner ENV TZ=Asia/Shanghai RUN apk --no-cache add ca-certificates tzdata libc6-compat libgcc libstdc++ WORKDIR /app COPY --from=builder /app/api_client_linux . VOLUME /app/conf EXPOSE 8080 ENTRYPOINT ["./api_client_linux" ,"-c","/app/conf/config.yaml"] 运行镜像我们也使用 Alpine ,由于 Alpine 极为精简,并没有常用的时区、证书等,会导致不可预料的错误。所以我们需要安装这些东西: 包名 用途 ca-certificates: CA证书,使用TLS tzdata: 时区配置 libc6-compat: C 标准库 libgcc: GCC 相关库,CGO编译程序依赖 libstdc++: C++ 标准库

网站迁移完成

网站维护记录
实施: hugo + github action + git pages + cloudflare 目前通过本地 vscode 写完日志后,直接推送到 github 私有仓库,通过 github action 生成静态内容自动推送到 github pages 仓库,完成部署。 静态内容存放: github pages 域名解析使用: cloudflare 附注: github pages 自定义域名 解析设置(支持A记录) https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site

SSH使用ProxyCommand通过代理服务器远程连接其他服务器

ProxyCommand ssh linux
OpenSSH的客户端有一个 ProxyCommand 的选项,用于 SSH 客户端与服务器之间的隧道通信(tunneling)。所谓的隧道技术,也称代理技术,是网络通信技术的一个普遍概念,就是把一条信道建立于另外一条信道之上。 SSH 会话基于一个 TCP 连接,如果我们把连接的两个端口各自的出口(也即入口)进行截获,就可以用其它的信道来传输。而且 SSH 仍然认为它用的是和另一端连接一条 TCP 连接。 ProxyCommand 指定一个命令(称为 Proxy),SSH 客户端将通过标准输入输出和这个命令启动后的进程进行正常的 SSH 通信,而 Proxy 连接着 SSH 服务器(一般是一个 Server Proxy,再由该 Server Proxy 连接服务器)。 环境说明 远程服务器的IP地址为 0.0.0.1,代号为X; 另一个远程服务器的IP为 0.0.0.2,代号为Y; 目前本机的IP地址为 0.0.0.3,代号为A,本地可以利用SSH客户端通过密钥或密码连接X和Y; 这里全部使用密钥的方式进行访问,本机 A 与 Y 之间无法进行访问。 本地的 ~/.ssh/config 的配置文件信息如下,通过X连接到Y; Host X HostName 0.0.0.1 User root Port 22 PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_1 Host Y HostName 0.0.0.2 User root Port 22 PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_2 Host test HostName 0. Read more...

检查网络延时测试 URL 汇总,可用于软件测试延时

技术分享
服务提供者 链接 大陆体验 境外体验 http/https IP Version 备注 Google http://www.gstatic.com/generate_204 5 10 204/204 4+6 Google网络联通性测试地址 Google http://www.google-analytics.com/generate_204 6 10 204/204 4+6 Google网络联通性测试地址 Google http://www.google.com/generate_204 0 10 204/204 4+6 Google网络联通性测试地址 Google http://connectivitycheck.gstatic.com/generate_204 4 10 204/204 4+6 Google网络联通性测试地址 Apple http://captive.apple.com 3 10 200/200 4+6 苹果设备用于检测 Wi-Fi 是否需要认证登陆的链接 Apple http://www.apple.com/library/test/success.html 7 10 200/200 4+6 苹果设备用于检测 Wi-Fi 是否需要认证登陆的链接 MicroSoft http://www.msftconnecttest.com/connecttest.txt 5 10 200/error 4 微软的网络联通性测试地址 Cloudflare http://cp.cloudflare.com/generate_204 4 10 204/204 4+6 Cloudflare的联通性测试地址 Firefox http://detectportal. Read more...
Previous Page 3 of 9 Next Page