1. 技术琐事

    部署自己的 WebDAV 服务,同步应用数据与软件配置

    笔者今天在使用 Next Chat 聊天时,突然想到聊天数据应该是可以备份的,在设置里面发现它仅支持 WebDAV 和没听说过的 UpStash 两种文件协议,而笔者使用的其它软件又广泛支持前者进行备份同步。于是今天便来捣腾 WebDAV 服务并实现数据备份。 Docker 部署 WebDAV 服务 一旦使用上了 Docker,就再也不想回去那种将服务运行在机器本体上的时代了。笔者首选使用…

    04 月 03 日 2025 年
    Docker WebDAV
  2. 技术琐事

    拿刚买的 Mac Mini 做我的应用服务器

    去年笔者拿 N100 小型主机安装 OpenWRT 系统作主路由服务器,又塞进去一些笔者自己部署的应用服务。后来 Mac Mini 4 发售了,评测得到的功耗与性能令人惊叹,最重要的是定价很不苹果,让我这个苹果小黑子也想要入手一台玩玩。 当然,笔者在逛 V2EX 的时候也看了大量劝退购入 Mac Mini 4 的帖子,尤其是像笔者这样只是拿来做轻量级应用服务器的用途 —— 大炮打蚊子。但是你知道的…

    03 月 30 日 2025 年
    MacOS Remote-Desktop Docker PostgreSQL Minecraft
  3. 技术琐事

    部署一个给朋友使用的 Minecraft 模组服务器

    笔者在今年五月份部署了一个与朋友同玩共乐的 Minecraft 服务器,稳定运行至今。忽然想记录为一篇博客,分享分享折腾的经历。 笔者结合个人喜好(最新版本,模组优先)和大众推荐(Fabric 更适合新版本 Minecraft),决定基于 Fabric 搭建一个可以添加模组的 Minecraft 服务器。此类服务器简称为模组服务器,还有基于 Paper, Spigot 等搭建的插件服务器…

    07 月 05 日 2024 年
    Linux Game-Server Minecraft
  4. 技术琐事

    基于 SteamCMD 部署一个给朋友使用的饥荒联机版服务器

    本文重现了笔者在自己的 CentOS 7 (64-bit) 系统中部署饥荒联机版服务器的全过程,供君参考。 Steam 版的饥荒联机版与 Wegame 版数据不互通,也无法相互联机。 笔者主要参考了如下两个部署教程: Guides/Don’t Starve Together Dedicated Servers How to setup dedicated server with cave on…

    07 月 02 日 2024 年
    Linux SteamCMD Game-Server Don't-Starve
  5. 技术琐事

    使用 Nginx 治理我的服务

    这些天在阿里云的 ECS 服务器上捣鼓自己的东西,通过 Nginx 转发请求,允许以域名的方式访问到笔者开设的不同站点、服务。 笔者撰写本篇文章,晒晒在服务器上都做了哪些工作,也希望能为您提供一些启发。 安装最新版本的 Nginx 笔者使用的服务器为 CentOS 7 系统,默认的 yum 源中包含的 Nginx 版本为 (2021-05-21)。 更新 yum 源,添加 Nginx 的官方源:…

    05 月 13 日 2024 年
    Nginx Linux
  6. 技术琐事

    使用 jsDelivr 加速 Github 仓库搭建自己的图床服务

    使用此类公益服务时应保留敬畏之心,不要滥用服务,消耗他人的善意。 今天突然想去搞个图床,使用 CDN 加速图片资源。因为博客放在小水管服务器上,直接用这个服务器向用户传输图片资源对带宽有很大影响。 遂上网搜索有无免费图床的服务,看到不少将 jsDelivr 用作图床使用的教程,便自己实践一番。 在国内,直接使用 Github 链接来加载图片是很慢的,甚至于加载不出来;但访问 jsDelivr…

    08 月 13 日 2021 年
    Github jsDiliver
  7. 技术琐事

    使用 EditorConfig 和 Prettier 优雅地配置 VSCode 代码格式化

    编写代码时使用 EditorConfig EditorConfig 能够帮助跨各种 IDE 开发同一项目的不同开发人员保持一致的编码风格。 VSCode 没有内置对 EditorConfig 的支持,需要在插件市场中手动下载插件。 EditorConfig 会自动读取工作区中的 文件,更详细的配置说明可以参考官方介绍。下面是笔者常用的配置: 推送仓库前使用 Prettier 为了进一步确保代码…

    08 月 07 日 2021 年
    Node EditorConfig Prettier VSCode
  8. 技术琐事

    更换持续集成工具,从 Travis 到 Github Actions

    我真傻,真的,单单受文档的推荐就选择了 Travis 作为部分项目的持续集成工具,没有料到它早已于 2020 年 12 月更换了免费政策,不再为开源项目提供免费的用于持续集成使用的 Credits 了。当赠送的 10000 个点数用完,就需要付费才能进行构建了。 当然,作为经济驱动的公司,近些天来又受 Github Actions 等其它持续集成工具打压了盈利空间…

    07 月 10 日 2021 年
    Travis Github-actions
  9. 技术琐事

    在浏览器中输入 URL 到显示网页,背后发生了什么

    最近学习前端基础知识的时候,看到了这个问题和一个回答,非常生动有趣。遂抱着梳理的想法,将整个过程描述出来。 现在,假设您打开了浏览器,想要访问我的个人博客,您会在地址栏输入 这个 URL 然后敲下回车键。 从敲下回车键到最终顺利在浏览器显示我博客的主页,这个过程的背后发生了什么呢? 检查 URL 格式 别急,在正式驶入互联网的快车道之前,浏览器会首先检查输入的 URL 的格式是否正确。 例如…

    07 月 08 日 2021 年
    计算机网络 网络安全 密码学
  10. 技术琐事

    使用基于 Docker 的 Nginx 部署静态网页项目

    现在,我已经安装了 Docker,并拉取了 Nginx 的镜像。除此之外,我也购买了域名,完成了备案,并且为域名配置了 SSL。一切准备就绪,那么我该怎么将我的静态网页项目在 Linux 主机上通过 Nginx 部署,最终实现域名访问呢? 本文以部署我的个人博客页面为例,介绍如何使用基于 Docker 的 Nginx 部署静态网页项目。 准备静态网页项目 为了更方便管理网页项目…

    06 月 25 日 2021 年
    Nginx Docker Linux
  11. 技术琐事

    漫谈 JavaScript 类(Class)的使用

    类(Class)是用于创建对象的模板,他们用代码封装数据以处理该数据,是面向对象编程方法的重要特性之一。JavaScript 中的 语法在 ES6 中引入,其底层实现基于原型(Prototype),系原型继承的语法糖(Syntactic Sugar)。 本博文将探讨 JavaScript 中如何使用类的相关知识,文章组织架构和内容基于 MDN 上关于类的章节。 定义类 类可以被看作一种…

    05 月 20 日 2021 年
    JavaScript ES6
  12. 技术琐事

    漫谈 JavaScript 闭包

    JavaScript 中有一个叫作闭包(Closure)的概念,非常有趣且适用,值得学习并整理为一篇博客。 为了更好理解闭包的作用,不妨看看我的关于 JS 变量提升(Hoisting)和函数提升现象的阐述。 作用域 在 JavaScript 中,作用域(Scope)是当前代码执行的上下文,也即是值和表达式在其中可访问到的上下文。 如果一个变量或其它表达式不在当前作用域中,就会沿作用域链…

    05 月 18 日 2021 年
    JavaScript
  13. 技术琐事

    漫谈 JavaScript 变量提升和函数提升

    在 ES6 规范出现之前,使用 JavaScript 声明变量只有 , 以及隐式声明三种方式。 按照一般编程的思维,我们会通过“先声明,后调用”的方式去使用变量,例如: 但假如反过来,我们“先调用,后声明”,会发生什么呢? 如上所示,在声明变量 之前尝试将它的值打印出来,控制台输出的结果是 ,而不是预期中的报错 。这就是变量提升。 而对于函数的声明与使用,也出现了相似的情况: 在声明函数…

    05 月 11 日 2021 年
    JavaScript
  14. 技术琐事

    Protobuf 学习笔记

    实习中学习一下 Protobuf 的功能和语法等,整理为此笔记。主要为翻译官方文档而来。 什么是 Protobuf Protobuf 是 Google 公司研发的一种用于序列化结构数据的机制,全称为 Protocol Buffers,具有语言无关、平台无关以及可拓展的特性。 我们常常把 Protobuf 与 XML (Extensible Markup Language) 相比较…

    03 月 29 日 2021 年
    gRPC Protobuf
  15. 技术琐事

    提示 *** is not a symbolic link 解决方案

    问题描述 在 CentOS 环境下执行 和 命令时都出现提示警告,节选内容如下所示: 错误分析 进入到对应目录下查找可以发现,这里的 与 实际上是相同的动态库文件,而非我们期望的符号链接和动态库文件。 这个错误的产生原因是, 在正常情况下应该是一个指向 文件的软链接,但却变成了一个动态库文件。 在一般情况下,这个错误并不会导致严重的问题;但假如目录下有多个不同版本的动态库文件…

    03 月 10 日 2021 年
    Linux
  16. 技术琐事

    一键安装并配置 MTProto Proxy 代理 Telegram

    Telegram 和 MTProto 是什么 Telegram,中文名称为“电报”,或简称“tg”,是一款跨平台即时通讯软件,客户端完全开源。我觉得重要的有如下 Features: 私密性高。不再使用的账号最长保留年限为 1 年,随时销毁聊天记录和一切账号资料。 安全性。端对端加密,不受审查。 完全免费。不限制上传文件(视频会有压缩),甚至可以拿来当备用网盘使用。不过已经确认会在将来布局群组广告…

    02 月 21 日 2021 年
    Telegram MTProto
  17. 技术琐事

    使用 Github Actions 持续集成与部署 Hexo 博客

    这是我撰写的第一篇与 Github Actions 有关的博客,那么就首先对 Github Actions 做一个简短的介绍吧。 Github Actions 是 Github 于 2018 年 10 月推出的持续集成服务(CI)。 大家知道,持续集成由很多操作组成,比如抓取代码、运行测试、登录远程服务器,发布到第三方服务等等。GitHub 把这些操作就称为 actions…

    02 月 19 日 2021 年
    Github-actions Hexo
  18. 技术琐事

    IEEE 1471(ISO/IEC/IEEE 42010)架构描述方法

    关于 本文对软件体系架构的描述方法的研究基于 ISO/IEC/IEEE 42010. ISO/IEC/IEEE 42010 于 2011 年批准使用并发布,该标准是继 2006 年 ISO 快速采用 IEEE 标准后,ISO 和 IEEE 联合制定的修订 IEEE Std 1471:2000 的产物。 本文绝大多数内容通过 DeepL 翻译 ISO/IEC/IEEE 42010 原文得来。 本文系…

    12 月 29 日 2020 年
    软件体系架构设计
  19. 技术琐事

    Windows 远程桌面连接指南

    环境 本文以电子科技大学(沙河校区)的校园网为例。家用场合可能需要拨打网络运营商开公网 IP,或通过 FRP 等技术实现。 演示的系统如下: 接受连接的主机: Windows 10 专业版 进行连接的主机: Windows 10 任意版本 配置远程桌面 配置接受连接的主机 首先需要目的主机打开允许远程协助的选项。进入高级系统设置-远程,勾选即可。 您可以选择允许进行远程登录的账号…

    12 月 07 日 2020 年
    Remote-Desktop Windows
  20. 技术琐事

    PyTorch 在 Windows 10 系统下的环境配置及安装

    关于 PyTorch 是一个开源的 Python 机器学习库,基于 Torch,用于自然语言处理等应用程序。 本文基于 Windows 10 系统实现 PyTorch 的安装与配置,并且演示了如何安装启用 NVIDIA 显卡的 GPU 加速。 访问我的 CSDN 博客以查看此文章。

    09 月 28 日 2020 年
    机器学习 PyTorch
  21. 技术琐事

    Hello Hexo World

    搭建一个自己的博客是多少投身于 IT 行业的男人女人们的梦想!撇开维护所花费的巨量时间开销不看,能够在网络上划得一片净土去传递自己的故事与思考,是一件何等快乐的事情! 正如许多人的第一篇博客那样,在这里记录下搭建博客的流程,也许能带给你些许决意和帮助。 开始前 假设你已了解何为 Github Pages,并充分认识到它对于一个渴望搭建博客的中国人的难以替代性(是的,我不愿意备案)。在开始之前…

    12 月 27 日 2019 年
    博客开发 Node Hexo