BLCL的博客小馆

binance币安理财存U年化收益40% !!牛市躺着就是收钱,闲置资金记得放理财!立即注册立享收益!!

首页

关于

归档

在群晖的 Docker 环境中运行甜糖星愿服务

前段时间在网上看到了一个叫 “甜糖星愿计划” 的东西,声称可以通过贡献闲置带宽来获得积分。正好我有个 NAS,正好我的宽带一天从白天闲到黑夜,不如利用起来,少少挣一些零花钱。 需要注意的一点是,本文提到的镜像仅在我的群晖DS218+ 上测试过,虽然镜像中未使用任何群晖限定的依赖,理论上适用于任何 x86 架构的平台,但并不保证运行效果。而且本文目标平台是 x86,如果你拥有 ARM 平台的机器,那根本不需要废这个劲,你可以直接运行甜糖星愿的可执行程序。 本文提到的操作全部基于 Docker,故在按照本文操作前,请先确保你已经拥有足够的知识来使用 Docker 和 docker-compose。 我的网络环境因为这个镜像相关的一些配置是以我的网络结构为基础的,所以我觉得有必要简单说一下我的网络结构是什么..

更多
loading..

记一次抢救被 force push 的 GitHub 仓库

就在刚刚,我一个误操作,在没有本地备份的前提下,force push 了一个 GitHub 上的仓库。万幸最后恢复成功,数据拿回来了。惊魂未定之余,在此记录我的抢救过程以供参考。 前景提要在闲逛 GitHub 的时候,发现了一个叫 snk的项目,可以在我的 profile readme 里面放个贪吃蛇,遂照着它的 example with cron job抄了一个 workflow 过来。但是这里我自作聪明地想着把东西全放在 master 上,就把 38 行的 target_branch 改成了 master。结果一运行吓一跳,我的 README.md 没了,仓库只剩下 snk 生成的 svg 文件。这不行啊,我花了好久的时间才整出来的东西,不能说没就没啊!于是赶紧开始网上冲浪,看怎么抢救被 forc..

更多

让 nohup 不输出 appending output to 'nohup.out'

在使用 nohup 的时候,它总会打印一条 nohup: appending output to 'nohup.out' 这样的信息,并且必须敲一下回车。 因为 nohup: appending output to 'nohup.out' 这条信息是打印到 STDERR 的,所以解决的方法很简单,把 STDERR 重定向至 STDOUT 就可以了,比如这样: 1nohup doSomething > nohup.out 2>&1 &

更多

使用 SSH config 简化 SSH 连接

如果你有很多的服务器要连接,如果对你来说记住那些服务器的地址、端口实在是一种痛苦,如果你一直在寻找一种能够简化在命令行下连接 SSH 服务器的办法,那么,本文将给你提供一种解决问题的思路,那就是,使用 SSH 的 config 文件。 SSH config 文件是什么Open SSH 客户端配置文件,允许你以配置项的形式,记录各个服务器的连接信息,并允许你使用一个定义好的别名来代替其对应的 ssh 命令参数。 SSH config 文件该怎么用创建 SSH config 文件通常来说,该文件会出现在两个地方,一个是 /etc/ssh/ssh_config,一个是 ~/.ssh/config。 /etc/ssh/ssh_config 文件通常用来定义全局范围上的 SSH 客户端参数,而 ~/.ssh/c..

更多

在 Spring Boot 应用中启用 HTTPS

在 application.yml 中添加如下配置,即可在 Spring Boot 项目中开启 HTTPS。 12345678910111213server: # 如果有需要的话,配置应用监听HTTPS的默认端口 port: 443 ssl: # 我把证书放在了 resources/cert/certificate.pfx下 # 使用时需要按照实际情况修改下面的路径 key-store: classpath:cert/certificate.pfx key-store-password: pA55w0Rd # 证书类型需要按照实际类型填写 # 本例使用PKCS12格式,所以写PKCS12。如果是JKS格式,那么需要填写JKS # 因为PKCS12比JKS有更..

更多

在 Spring 中通过配置类注入配置文件的值

我们在开发过程中,为了保证项目的灵活性,经常会选择将一些值放在配置文件中,并在代码中将它注入并使用。将值注入代码最常见的一种方法,则是使用 @Value() 注解搭配 SpEL 直接注入我们需要的属性。但是鲁迅先生有云:从来如此,便对吗?这里,我想介绍一个我个人认为更好的实践:通过配置类来注入属性的值。 旧的做法有什么问题假设我们现在有这样一个 application.yml,其中 credentials 部分是我自定义的一个属性: 12345server: port: 9999credentials: token: A_VERY_SECRET_TOKEN 然后,我们会在用到它的地方,直接通过 @Value 注解把它注入进来,就像这样: 123456@Componentpublic class ..

更多

Shell 脚本中 set -ex 命令的作用

刚刚学会了一个很实用的 shell 命令 set -ex,在这里分享一下。 稍有常识的人都能看出,这是 set 命令加上了 -e 和 -x 两个参数 (废话么这不是)。那么,我就把这两个参数拆开,分别说一下它在脚本中的用处。 set -e先说说 set -e,这个参数的含义是,当命令发生错误的时候,停止脚本的执行。 通常来说,我们会习惯于使用 && 来实现这样的功能,比如: 123#!/bin/bashecho 1 && rm non-existent-file && echo 2 但是,写成一行呢,可读性有点差,分成多行的话,也得注意换行符 \ 和 && 号,我就有过好几次忘了加这俩东西,还是挺麻烦的是吧。 更麻烦的是,&&a..

更多

分环境为 Git 指定单独的配置

有的小伙伴,在公司需要使用公司的 Git 来干活,同时自己也有些托管在 GitHub 等其他仓库的代码,在这种情况下会有一个烦恼,就是怎么样在多个仓库之间使用不同的配置。比如在公司仓库和个人仓库之间使用不同的身份信息,或者在公司仓库和个人仓库之间,使用不同的 GPG 签名。 在 2.13 版本之前,大概你就只能单独为每一个仓库单独设定这些信息了,但是,在 2.13 这个版本中,Git 引入了一个名为 “按条件引入”(Conditional includes) 的功能。这个功能允许用户通过指定一定的条件,来使 Git 从不同的配置文件中取得配置项。 准备工作“按条件引入” 功能可以根据目录或者分支来决定使用哪个配置,显然根据分支无法区分工作环境和私人环境,所以首先需要分别为工作环境和私人环境创建各自的目..

更多
loading..

使用 Tailscale 部署虚拟局域网

最近折腾了下用 Tailscale 搭建虚拟局域网,在这里记录一下折腾的过程和一些心得。 什么是 Tailscale说起 Tailscale,就不得不提到最近很火的 Mesh VPN 这个概念。 经典的 VPN 是作为一个网关,让外网用户通过它来访问内网。比如传统的 L2TP VPN: 但是 Mesh VPN 提出了一种全新的拓扑结构,这种结构中每个节点之间都相互连接,不再存在中心的 VPN 服务器。 上图提到的 Wireguard 就是一个 Mesh VPN 的实现,但是 Wireguard 配置比较繁琐,维护成本也比较高,所以 Tailscale 在基于 Wireguard 的基础上做了一些优化,比如用于 NAT 穿透的 DERP 协议、建立了公网 coordinator 服务器用于下发配置,..

更多
loading..

配置 Caddy 作为静态网站服务器和前置代理

之前听闻有个新的 Web Server,名曰 Caddy,其配置简单,还默认启用 HTTP/2,并且可以自动申请 Let’s Encrypt 的 HTTPS 证书。试用了一番,觉得不错,便把这个博客的服务程序换成了 Caddy。在这里呢,记录一下安装和配置的过程。 安装万事第一步,先安装。 下载页面概览打开 Caddy的下载页面,页面的内容简洁明了,左侧是 4 个要配置的项,右侧是每个配置项实际的内容。 选择运行平台首先,选择好 Caddy 要在哪个操作系统下运行。Caddy 支持的平台还是足够多的,而且覆盖到了主流的操作系统,所以甭管您是 Windows,还是 Linux,抑或是 BSD,都可以运行 Caddy。因为我的服务器运行的是 64 位 Ubuntu,所以选择 Linux 64-bit。 ..

更多
1434445464787