2023年度总结
2023年度总结2023年就这样子莫名其妙的过了,又是稀里糊涂的一年。这一年,和最爱的人去了一趟西藏,圆了她心心念念的梦想;这一年,坐了30多小时的火车,跨越千里去见证一段美好的爱情;这一年,参加了加入PWC以来第二次的线下年会,疫情总算是过去了。
美好的西藏其实是先从上海到成都出发,在成都带了两天,陪她那只叫做花花的大熊猫。 其实19年时候我去过成都大熊貓繁育研究基地,那个时候还没有花花,也没有那么多的游客,当然也有可能我去的是淡季,不过总算是满足她的心愿了。吃了当地的特色,三大炮,鸡豆花,兔腿,麻婆豆腐,其实那个陈麻婆的那个夫妻肺片还是很有特色的,不辣,有点甜,和紫燕百味鸡的那个压根就不一样的。
我们是报了一个旅行团,四个人,一个司机。除了我们之外,还有一个山东小哥,一个四川小伙。山东小哥是真的很社牛,和什么人都能聊起来,喜欢旅游,朋友圈三天两头出去玩,晒各地的美景。四川小伙是拿到美国一家博士的offer了,想在出国前能够好好放松一下。四个人一个司机,就这样子从成都沿着318国道出发了。
去了很多地方,但是我没记住,因为这不是我热爱的,吃了很多美食,我记住了它们的味道,永远不会忘记 ...
学习multipass笔记
前言Multipass 是一个轻量虚拟机管理器,是由 Ubuntu 运营公司 Canonical 所推出的开源项目。运行环境支持 Linux、Windows、macOS。在不同的操作系统上,使用的是不同的虚拟化技术。在 Linux 上使用的是 KVM、Window 上使用 Hyper-V、macOS 中使用 HyperKit 以最小开销运行 VM,支持在笔记本模拟小型云。
同时,Multipass 提供了一个命令行界面来启动和管理 Linux 实例。下载一个全新的镜像需要几秒钟的时间,并且在几分钟内就可以启动并运行 VM。
安装在window环境下进行部署,下载最新安装包:https://github.com/canonical/multipass/releases/
创建vm创建实例
1multipass launch -n k3s-master -c 2 -m 4G -d 10G
查看实例
1234multipass listName State IPv4 Imagek3s-master ...
HorizontalPodAutoscaler入门实践
HorizontalPodAutoscaler在Kubernetes中,HorizontalPodAutoscaler 自动更新工作负载资源(例如Deployment或者StatefulSet),目的是自动扩缩工作负载以满足需求。水平扩缩意味着对增加的负载的响应是部署更多的 Pod。
本文目的是通过Docker Desktop上的Kubernetes实例去实践pod的水平扩展。
本文默认Docker Desktop上的Kubernetes已经安装完成。如果需要帮助,可以阅读Docker Desktop自带k8s安装笔记。
安装 Metrics server由于Docker Desktop上的Kubernetes默认并没有安装Metrics server,而HorizontalPodAutoscaler依赖通过Metrics server获取到的数据, 因此需要提前安装。
12kubectl top node error: Metrics API not available
从Metrics server的release页面获取最新的components.yaml文件,
然后执行:
1 ...
如何使用bazel去构建基于express和typescript的nodejs项目
前言Bazel 是一款类似于 Make、Maven 和 Gradle的开源构建和测试工具。它使用可读的高级构建语言,支持多种变成语言编写的项目,并且能够为多个平台进行构建。Bazel 支持构建包含多个仓库、大量开发人员的大型代码库。
详细介绍可见Bazel官网。
目的本文的目的是使用bazel5去构建一个完整的nodejs后端项目,并不负责bazel相关知识的介绍。
配置首先在package.json文件中·devDependencies·部分添加:
1234"@bazel/bazelisk": "^1.7.5","@bazel/buildifier": "^6.0.0","@bazel/ibazel": "^0.16.0","@bazel/typescript": "^5.8.1",
然后再执行安装依赖命令。
创建.bazelignore文件并写入下面的内容:
123.gitnode_modulesdist
创建.baze ...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick StartCreate a new post1$ hexo new "My New Post"
More info: Writing
Run server1$ hexo server
More info: Server
Generate static files1$ hexo generate
More info: Generating
Deploy to remote sites1$ hexo deploy
More info: Deployment
用k3s部署PostgreSQL用于开发
前言PostgreSQL是世界上最先进的开源数据库。本文的目的是使用k3s本地部署PostgreSQL用于本地开发使用,不具备直接上生产的能力。
安装PostgreSQL首先准备config.yaml用于定义PostgreSQL的配置:
1234567891011apiVersion: v1kind: ConfigMapmetadata: name: postgres-config namespace: default labels: app: postgresdata: POSTGRES_USER: postgres POSTGRES_PASSWORD: '123456' POSTGRES_DB: postgres
申请PersistentVolume用于数据持久化的存储:
12345678910111213apiVersion: v1kind: PersistentVolumemetadata: name: postgres-pv-volume namespace: defaultspec: storageClassName: manu ...
解决Windows下Docker启动容器时,端口被占用错误
解决Windows下Docker启动容器时,端口被占用错误问题描述在使用docker-compose启动mysql的时候遇到一个问题:
1bind: An attempt was made to access a socket in a way forbidden by its access permissions.
然后查了一下是否存在应用占用了3306的端口:
1netstat -ano | findstr 3306
结果很尴尬,并没有。。。
百度了一下,发现是Hyper-V会保留部分tcp端口导致我们自己无法使用这些端口, 使用如下命令查看保留的端口:
123456789101112131415161718192021222324netsh interface ipv4 show excludedportrange protocol=tcp协议 tcp 端口排除范围开始端口 结束端口---------- -------- 1026 1125 1126 1225 1226 1325 1 ...
记录使用pg_dump中遇到的ssl问题
记录使用pg_dump中遇到的ssl问题问题描述在使用pg_dump过程中遇到的两个问题:
SSL connection is required. Please specify SSL options and retry.
SSL error: unsafe legacy renegotiation disabled
SSL option问题这是因为postgresql需要使用TLS/SSL connections,我们可以设置一个环境变量PGSSLMODE为required就可以了。
针对Linux或者Macos用户,使用:
1export PGSSLMODE=require
针对Windows用户,使用:
1SET PGSSLMODE=require
unsafe legacy renegotiation disabled这是因为ssl协议存在一个漏洞,后来升级的时候提供了一个开关默认关闭这个了漏洞,这个解决方法存在一定安全隐患,请谨慎使用。
创建一个自定义的openssl.cnf,并写入:
12345678910openssl_conf = openssl_ini ...
记录一些测试币的水龙头
记录一些测试币的水龙头记录一些常用的区块链水龙头,以防忘记
GoerliGoerli Testnet Faucet: 不太记得当初是怎么知道了,但是似乎永远失败…
GOERLI FAUCET, 每天可以获取0.1 ETH(以前是可以每天领取0.25ETH), 需要使用Alchemy账号.
Mining Faucet, 使用cpu的算力去挖矿,问题不大,可以使用。
polygonpolygon faucet, 支持多个测试网络,但是Goerli的ETH没拿到
参考资料
免費取得Goerli測試幣
k3s使用Let‘s Encrypt配置https入口部署
前言本文记录k3s使用letsencrypt配置ssl证书和续签。
本文使用的k3s版本为: v1.23.6+k3s1。
安装 cert-manager123# 使用官网提供的配置文件一键安装# 如果拉取 github 资源有困难,可以从网络通畅的位置下载好粘贴过去$ kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.9.1/cert-manager.yaml
如果一切正常,k3s
12345$ kubectl get pods -n cert-managerNAME READY STATUS RESTARTS AGEcert-manager-6544c44c6b-tlhw8 1/1 Running 0 51scert-manager-cainjector-5687864d5f-rldsg 1/1 Running ...