环境1
云服务器:华为云
系统:Ubuntu 22
软件环境: 宝塔、docker,Nginx
docker 步骤
-
宝塔中搜索
b3log/siyuan
,拉取思源的镜像
拉取失败:如果拉取失败,考虑是否是 docker 配置文件问题,修改仓库的镜像加速链接:
{ "registry-mirrors": [ "https://registry-1.abcio.xyz" ] }
-
点击
容器
-->创建容器
-->命令创建
选项卡,输入如下命令进行创建docker run -v /root/data/docker_data/SiYuan:/home/www/siyuan -p 6806:6806 -u 1000:1000 --name siyuan b3log/siyuan --workspace=/home/www/siyuan --accessAuthCode=1212
解释一下:
-
-v /root/data/docker_data/SiYuan:/home/www/siyuan
:将宿主机的/root/data/docker_data/SiYuan 挂载到容器内的/home/www/siyuan 目录; -
-p 80:6806
:将宿主机的 80 端口映射到容器的 6806 端口,因为思源默认是 6808 端口,80 端口可以你自己定义; -
-u 1000:1000
:容器运行的权限用户和用户组,保持不变; -
--name
:容器命名 -
--workspace=/home/www/siyuan
:思源在容器内的工作目录,也就是上面-v 挂载的目录,建议保持和上面挂载的相同即可; -
--accessAuthCode=访问码
:访问码,必选项。
-
-
启动完成后,访问
ip:端口号
即可。如果访问不通,可以到主机服务提供商,如腾讯云中查看主机的端口是否开放,将 80 端口(上面-v 参数中你宿主机的映射端口)开放,这里以华为云为例在安全组中添加 80 端口的入站规则:
-
访问效果:默认是英文,在
设置
-->Appearance
-->language
中更换 English 为中文即可。
问题与解决
表示 80 端口被占用,说明你的宿主机 80 端口可能开启了别的服务。
解决办法:更换命令行中的端口(推荐),或者关闭 80 端口的服务。
提示目录无权限问题:
-
sudo chmod 对应的目录权限为 777
-
或者是更换目录
docker run -v /root/data/docker_data/SiYuan:/root/data/docker_data/SiYuan/siyuan -p 808:6806 -u 1000:1000 b3log/siyuan --workspace=/root/data/docker_data/SiYuan/siyuan --accessAuthCode=1212
同步方面
第一种:如果仅仅是云端的话,直接这样就 ok 了,及时对 docker 容器进行备份即可,缺点是只能浏览器访问;
第二种(推荐):如果还需要使用客户端,则可以通过官方的功能特性会员(64¥),加上配置 s3 的方式进行同步(虽然配置麻烦,但是容错率非常高,即使服务器挂了笔记也还在,支持网页访问的同时,依旧支持本地客户端,效果极佳)。
环境
↩
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于