思源笔记部署(非docker部署,非源码编译)开机自启
·
一、前言
可能不是最优解,我是自己用,问题不大。
没搜到非docker部署的方式,自己瞎琢磨的
一开始docker部署,后面看到插件商店内,好像有个插件需要其他的端口,想着万一我后面还需要其他端口,为已存在的 Docker 容器添加新的端口映射,我懒。
找找非docker部署的方式,一搜全都是docker部署,也有可能我瞎没看到。
找到一篇。但是是Windows的,而且他似乎还自己编译,让我手动编译,不可能的。
我最后的方案就是
- deb先安装
- 创建运行的用户
- 用创建的用户运行一次,配置允许网络访问
- 看看进程,它怎么启动的
- 用.service 替代命令行启动
二、环境
Ubuntu Server 无图形化界面

三、安装
(一)将源码包下载,安装 (root)
先下载
wget https://github.com/siyuan-note/siyuan/releases/download/v3.5.8/siyuan-3.5.8-linux.deb
安装依赖
apt update
apt-get install libasound2t64 -y
安装
# 安装
dpkg -i siyuan-3.5.8-linux.deb
# 修复依赖
apt install -f
(二)创建一个普通用户,运行思源
# 添加用户
useradd -m siyuan
# 看一下
ls -l /home
# 改密
passwd siyuan
# 登录
ssh siyuan@127.0.0.1
# 登录后运行思源
siyuan
运行后发现报错 ,

(三)重新启动一个ssh连接,重新运行siyuan
启动
siyuan
这里弹出窗口是因为我用Mobxterm,它自带 X server


没有桌面的情况下,替代方案:
# --------------- 新的终端 root --------------
apt-get install xvfb -y
# 创建一个桌面
/usr/bin/Xvfb :99 -screen 0 1280x800x24 &
# 切换到 siyuan 用户,不能用su siyuan
ssh siyuan@127.0.0.1
# 执行
siyuan
# --------------- 新的终端 root ----------------
# 安装
apt install -y x11vnc
# 防火墙放行
ufw allow 5900/tcp
ufw reload
# 转发
x11vnc -display :99 -nopw -forever -shared -noshm
(四)利用UI界面,指定存储的位置 、开启网络访问
(1)指定存储路径
选择一下,指定存储的路径, siyuan 家目录下创建一个workspace

选siyuan的家目录,然后点open

点ok

(2)打开点击设置

(3)点击about,开启 network serving
这时候会自动断开,vnc连接的页面黑屏,这是正常的。需要手动执行以一下 siyuan,改了配置会自动关闭,可以看到 “will be closed automatically after modification

(4)回到之前的siyuan用户终端,重启siyuan
siyuan

(5) 设置访问授权码
必须配置,否则web访问报错
{
"code": -1,
"msg": "Auth failed: for security reasons, please set [Access authorization code] when using non-127.0.0.1 access\n\n为安全起见,使用非 127.0.0.1 访问时请设置 [访问授权码]"
}


(6)这里可以看到当前的访问端口为38359,这个端口默认情况下,每次启动都会变

(7)观察之前启动后的输出, 端口就是38359

看到主要用 /opt/SiYuan/resources/kernel/SiYuan-Kernel 启动 , 可以看一下启动参数
root@ubunut-server:~# /opt/SiYuan/resources/kernel/SiYuan-Kernel --help
Usage of /opt/SiYuan/resources/kernel/SiYuan-Kernel:
-accessAuthCode string
access auth code
-lang string
ar_SA/de_DE/en_US/es_ES/fr_FR/he_IL/it_IT/ja_JP/ko_KR/pl_PL/pt_BR/ru_RU/tr_TR/zh_CHT/zh_CN
-mode string
dev/prod (default "prod")
-port string
port of the HTTP server (default "0")
-readonly string
read-only mode (default "false")
-ssl
for https and wss
-wd string
working directory of SiYuan (default "/root")
-workspace string
dir path of the workspace, default to ~/SiYuan/
(8)咱选定,固定端口为 42041,防火墙放行
# root 终端
ufw allow 42041/tcp
ufw reload
(五)新建服务配置文件 、启动服务
vim /etc/systemd/system/siyuan.service
[Unit]
Description=Siyuan Service
[Service]
Type=simple
User=siyuan
Group=siyuan
ExecStart=/opt/SiYuan/resources/kernel/SiYuan-Kernel --port 42401 --wd /opt/SiYuan/resources
KillSignal=SIGTERM
KillMode=mixed
TimeoutStopSec=30
Restart=always
RestartSec=5s
[Install]
WantedBy=multi-user.target
重新加载 systemd 系统和服务管理器配置
systemctl daemon-reload
systemctl start siyuan
(六)启动
systemctl start siyuan
systemctl enable siyuan # 开机自启动

更多推荐



所有评论(0)