蓝易云能干什么
本文主要为记录、复习、参加《蓝易云》教程征集活动撰写,刚好也在研究一个新的文档工具,所以就搞一下。
初始化
每个人都有自己的玩机初始化流程,我的就比较简单(我接触的比较少)。
swap
云服务器或者VPS的内存都比较少,所以虚拟内存是必须开启的。因为我试过k3s不开虚拟内存的情况,真的会连命令都输入不进去,后来只能重启机器。
-
确定当前没有开启 Swap
在终端使用命令
free -m
查看输出结果total used free shared buff/cache available Mem: 1997 189 263 20 1544 1604 Swap: 2047 3 2044
如果看到最后一行是0 0 0,则表示当前没有开启。
-
创建 Swap 文件
使用下面命令创建交换文件。因为要分配硬盘空间,所以有可能比较慢,等待一会
dd if=/dev/zero of=/swapfile count=2048 bs=1M
count=2048 表示创建 2G 的虚拟内存,一般我习惯多大的实际内存设置多大的虚拟内存,但是貌似设置超过的也不影响。
可以使用
ls / | grep swapfile
命令查看一下,确保交换文件存在,创建成功。root@tsy5595:~# ls / | grep swapfile swapfile
-
激活 Swap 文件
依次执行下面的命令chmod 600 /swapfile mkswap /swapfile
依次运行上面两个命令后,如果成功,将会看到类似下面的输出
Setting up swapspace version 1, size = 2097148 KiB no label, UUID=ff3fc469-9c4b-4913-b653-ec53d6460d0e
-
开启 Swap
执行
swapon /swapfile
,到这里,Swap 已经开启成功。我们再次使用free -m
命令查看一下,你将看到上面不再是 0 0 0 的输出。 -
设置系统启动时自动开启 Swap
使用编辑器编辑
/etc/fstab
文件,添加 Swap 自动开启的配置,这里使用 Vim进行编辑,也可以使用其他文本编辑工具,例如 nanovim /etc/fstab
在 fstab 文件最后一行添加下面的内容
/swapfile none swap sw 0 0
然后Ctrl+X
、Y
保存,退出。现在 Swap 已经配置完,并且可以在系统启动时自动开启。
docker
我是比较习惯使用封装好的安装脚本,可以直接安装docker
和docker compose
,如果是中国大陆使用还可以直接换源
bash <(curl -sSL https://gitee.com/SuperManito/LinuxMirrors/raw/main/DockerInstallation.sh)
Caddy
Golang编写的服务器,虽然速度不如nginx,但是方便配置。安装也很方便,因为是香港服务器,所以直接使用官方命令梭哈。
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
使用systemctl status caddy
可以看到caddy已经在运行了,或者直接访问IP也可以看到Caddy默认的网页文件。
root@tsy5595:~# systemctl status caddy
● caddy.service - Caddy
Loaded: loaded (/lib/systemd/system/caddy.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2023-03-12 18:24:26 CST; 6min ago
Docs: https://caddyserver.com/docs/
Main PID: 20526 (caddy)
Tasks: 9 (limit: 2376)
Memory: 15.3M
CGroup: /system.slice/caddy.service
使用journalctl --no-pager -u caddy
可以看到日志信息。
配置文件地址:cat /etc/caddy/Caddyfile
可以看到默认的html地址是/usr/share/caddy
添加dnspod插件
# 直接添加 如果卡住说明官网可能不稳定
caddy add-package github.com/caddy-dns/dnspod
# 直接源码编译安装 需要golang环境 编译完之后需要替换原先的caddy
go install github.com/caddyserver/xcaddy/cmd/xcaddy@latest
xcaddy build --with github.com/caddy-dns/dnspod
添加泛域名证书
*.example.com {
tls {
dns dnspod your-id,your-secret
}
## 预留给子域名做配置
#@foo host foo.example.com
#handle @foo {
# respond "Foo!"
#}
handle {
respond "running."
}
}
应用
工欲善其事,必先利其器。利用开源的工具不仅能让我们的数据安全得到相对的保证,还能提高不少的效率。
halo博客
作为开源Java博客中的领头羊,halo的易用性和美观度是毋庸置疑的,一样命令跑下去,仅需填写基础的初始化信息,就可以开始自己的文章创作。对于会一些编程的人来说,halo还提供了 API接口,提供了无限可能。
version: "3"
services:
halo:
image: halohub/halo:latest
container_name: halo
restart: unless-stopped
volumes:
- ./data:/root/.halo
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "8090:8090"
environment:
- SERVER_PORT=8090
- SPRING_DATASOURCE_DRIVER_CLASS_NAME=org.h2.Driver
- SPRING_DATASOURCE_URL=jdbc:h2:file:~/.halo/db/halo
- SPRING_DATASOURCE_USERNAME=username
- SPRING_DATASOURCE_PASSWORD=password
- HALO_ADMIN_PATH=admin
- HALO_CACHE=memory
将文章内容保存为docker-compose.yml
,并使用docker-compose up -d
运行,然后修改caddyfile中的内容,即可通过blog.example.com/admin
来访问后台。
*.example.com {
tls {
dns dnspod your-id,your-secret
}
## 预留给子域名做配置
@blog host blog.example.com
handle @blog {
reverse_proxy localhost:8090
}
handle {
respond "running."
}
}
因为是Java程序所以内容占用比较多,大概500M。
MinDoc
文档管理工具,可供多人使用,东西多了难免记不住。而这时,这款开源项目就可以用来记录你的笔记,等维护的时候也可以快速找到当时的情况。
dbgate
许多开源程序需要用到数据库,而数据库需要管理工具,有一个网页的管理工具,占用小,功能齐全,放着也可以备用。
postgres
gitea
作为程序员必备的工具,git工具是必不可少的。但由于github和gitee的审核机制,所以自建一个git也是个不错的选择,而gitea的占用小占用,功能全是个不错的选择。
# 暂时跳过
outline
# 还在研究
最后说两句
如果你是一个隐私注重者,可以尝试一下这些的开源项目,还是蛮有趣的。
6666吹爆
支持
好!
好活当赏
支持
好活!