那天续费的时候,发现距离上一篇博客已经有两年之久了,挺惭愧的,就像买了一台心心念念的顶配电脑,确没有用起来。
这个端午只放了三天假期,外面也在下雨我想是时候重新整理一下了
首先第一件事情是我想重新梳理一下服务器部署,由于是单机部署,每次博客迁移成本都很高,主要是需要备份数据,配置环境,非常繁琐,就像电脑里杂乱无章的目录不想(甚至抗拒)整理。之前在流浪的博客中我使用 Docker 重新整理过,发现非常卡顿,加载很慢,后来换成单机就好了很多。现在想想可能有两方面的原因,第一是容器之间使用了 http 架构,容器 A nginx 访问容器 B 中的 Apache 服务,本身多了一层代理。第二可能是当时的虚拟主机配置比较差。跑 Docker 本身就比较费力的。所以问题应该不是除外技术本身。
这次我主要想解决的问题是
- 我想方便快捷的容灾数据到本地。比如能够在机器被关闭,数据库被删除后能够快速恢复。
- 我需要很容易部署一些 App 服务接口。而不影响现有的环境。这些接口可能用 python 也可能用 nodejs 或者是 php
- 我需要能够在迁移时,不需要再次部署比如证书等环境。
因此基于第三点,肯定是容器化技术比较方便了。因此我的这一次改造还是基于docker,这次我也是现学现用,基于ChatGPT 快速入门了一些之前不会使用的技术。比如 docker-compose等.
这次我的思路是,每个容器负责的职责变得单一起来了,nginx一个容器,数据库一个容器,应用程序处理一个容器,通过共享卷来实现各个容器之间的content内容交互。再使用 docker-compose将整个业务串起来。对于我而言我最关心的就是我自身的数据(需要即时备份的比如数据库,文件内容,以及代码),这些我都通过共享卷来实现,然后本地和远程之间使用git来同步这些内容,这样远端产生的内容可以拉下到本地,本地修改的代码可以push到远程。只要重启一下服务就好了。
总体而言,这是一件很有意思的事情,一度废寝忘食,好久没有这样的体验了。这次通过ChatGPT 来实践这次迁移,整体过程丝滑很多。 总结了一个经验就是,我们要有自己的思路大纲,根据这个思路大纲,我们让chatgpt来完善。比如我知道有一种方式 可以实现某个功能,但是没有用过,这种情况下,可以让chatgpt直接给出代码实现。我们只要校验一次就够了。因此这是一种很高效的方式去拓宽自己的知识边界。不用再在细节上死抠。生产效率也大大提升了。
接下来,我会慢慢完善一下网站,丰富一下内容,作为知识沉淀和工作展示以及生活分享的平台。