通过 PVE LXC 搭建 docker 环境

  • 本文基于 PVE 7.4, LXC,理论上 PVE8 和其他版本也适用

  • 设置好 PVE 代理,否则一些包可能拉取会很慢或者直接失败

原先 docker 直接装在 PVE 宿主中,但经常性占满资源,导致其他虚机/LXC卡顿;后来装了个 istoreOS,用该 openwrt 自带的 docker 环境,但这个环境有点问题,如挂载磁盘失效、锁文件、一些第三方的镜像部署时候受限于 openwert/istoreOS 导致一些莫名其妙的错误,初步判断是虚拟化导致的,没深究。

趁容器还没那么多,整体调整到 LXC,方便控制资源,步骤如下:

PVE 中下载 debian11 的 CT 模板

PVE7 不支持 debian12,如果你是 PVE8,建议直接 debian12,对 docker 最新的 feature 支持更好以及权限设置也更友好。

image.png

解决 ios 18(包括ipadOS 18) 下通过文件(files app)连接 samba 服务器,目录变成只读权限的问题

最近 ios/ipadOS 升级到 18 后,原先通过 files(文件) app 连 samba 发现目录都变成了只读,基本断定是 ios 问题导致,印象中 ios14 时候也碰到过类似的情况,后面补丁版本修复了这个问题就没在意。

但最近发现 ios18 也出现了该问题,且ios18.0.1也并没有修复该问题,想着还是增加下配置算了。

处理方法也比较简单,只要在 samba 配置文件中增加 streams_xattr 即可,如下:

PM2 的安装、配置和使用

安装和常用命令

安装 nodejs 和 npm

1
2
# 对于 ubuntu22.04,直接:
sudo apt install -y nodejs npm

安装 PM2

1
 npm install -g pm2

启动程序

1
pm2 start <app_name|id|all>

通过 DDNS+显性URL 把内网部署的.NET CORE WEBAPI 项目暴露到公网中

通过本文,你可以把部署在公司/家里服务器/虚拟机上的网站、webapi等站点、服务暴露到公网中,通过显性URL来达到隐藏端口号,直接80/443端口访问。

环境说明

  • .NET CORE WebAPI:本文初衷是因为作者日常 obsidian 中的模板需要一个天气 api,原本是用了 witt 站点提供的服务,但经常抽风,无奈之下准备自己搭建一个,至少可控。

    • 提供天气的服务基于 .NET CORE WEBAPI(.NET 6)
    • 高德天气服务(考虑到会有端口被扫描的风险,个人编写的查询 api 不再对外开放使用。)
  • R86S:

    • PVE7 容器(OS 为 ubuntu 22.04)
    • DDNS 服务(宿主为 istoreOS)
  • 本文域名和解析在腾讯云上(阿里云,花生壳类同)

发布、打包程序

因为内网使用,所以直接 http 即可,为了防止 webapi 自动跳转到 https,建议程序中注释以下部分:

1
app.UseHttpsRedirection();

打包项目:直接在 VS 上打包:

如果你要用 PM2 来进行进程守护,那么可以生成的时候,建议用独立部署模式,这样子才能生成不包含 .dll 后缀的文件,以便 PM2 来执行

使用 oh-my-posh 美化 windows terminal,让其接近oh-my-zsh

为了同 iterm2 下的 oh-my-zsh 保持基本一致,博主用的是 aliens 主题+一些自定义配置调整,最终效果如下,你也可以根据自己需要进行细调,本文旨在快速让你进行美化,少踩一些坑:

  • 如果你闲麻烦,或者想跟我用一样的,文末会给出主题配置,直接拿去用即可。
  • 效果图:

版本说明:

  • 本文撰写时:

    • oh-my-posh 版本为 v7.87.0
    • powershell 的版本为 7.2.3,(最新为 7.2.4)
    • OS:win10,21H1,19043.1706

注意事项:

1. 安装时请关闭杀毒软件、各类管家,否则写入注册表时会报错。
2. 有条件的请挂代理,因为源文件在 git 上。
3. 全程在 powershell ,管理员模式 下进行。

安装 windows terminal:

可直接在 microsoft store 中搜索安装。这里不赘述。

《富爸爸穷爸爸》Summary


比较经典的一本理财入门书:《富爸爸穷爸爸》,2013 年左右读过一次,这次算是二刷,有新的感悟,已经分不清日常操作中的一些方法和思维方式是否是从这本书中悟得,但着实不错,做了点摘要分享下。

《买基金为自己加薪》Summary

绩效导向:挑选中、长期绩效好的基金

  • 中长期指:近 3 年绩效都在前 1/4 的基金。(因为经济走完一个循环差不多就是 3 年的时间,只要基金在这个周期内绩效都能稳居前列,说明无论在什么景气阶段,该基金都能打败其他基金)
    • 也可以直接按照是否连续 6~8 个月跌出 1/2 来判断是否需要考虑换基金。
  • 如果是单笔投资,可以看短一点,如 1 年的绩效,同样是看是否是前 1/4 的基金,之后再看 6 个月, 3 个月的绩效,删掉跌出 1/4 的基金。
  • 不要迷恋第一名,要投资稳居前列的。

定额投资方法:

【不到获利心不死,绝不轻易提分手】

.NET CORE 下通过 SmtpClient 发送邮件

通过本文你可以实现:使用 .NET SmtpClient 来发送邮件

  • 基础使用:仅含有邮件内容,无附件;
  • 发送含有附件的邮件;
  • 以及抄送等功能。

通过使用 epplus 来动态生成 excel 表单

Summary:

  • 本文旨在说明通过建立本地模型类,通过 EPPlus,来统一生成 excel,模型类见下方代码块。
    • 适合需要动态生成整个 excel 表单的业务。
    • 如果无需动态生成,则可以直接给出物理excel文件硬编码即可。
  • 因涉及到公司业务,这里仅给出和业务无关部分代码。

环境说明: