1.5.4+ 版本思源笔记 Docker 部署参考(1.7 + 版有效)

本贴最后更新于 903 天前,其中的信息可能已经时移世改

一、修改思源笔记默认 6806 端口(以 1.5.4 版为例,不修改端口可跳过这一步

  1. 下载思源笔记 linux 版客户端

下载地址:https://b3log.org/siyuan/download.html

  1. 解开下载好的 siyuan-1.5.4-linux.tar.gz,找到安装包中的 resources/stage/ 目录下找到 build 文件夹
  2. 修改 appdesktopexportmobile 4 个目录下所有 js 文件,将 6806 替换成 80

js 名类似 main.d3d59c662fee6c9d90d0.jsprotyle-method.js 等,中间数字为随机生成

  1. build 文件夹复制 /home/mura/siyuan 目录(此目录下准备放思源笔记的工作空间,可根据自己需要自定,我是又新建了一个 server 目录),并给/home/mura/siyuan 目录配置权限,准备做容器卷
    cp -r /home/mura/downloads/build /home/mura/siyuan/server
    
    chown -R 1000:1000 /home/mura/siyuan
    

二、Docker 部署

  1. 1.5.2 版之后,思源笔记容器内部改为 1000:1000 用户运行,所以相应的目录都需要放在宿主机的 1000 用户(安装 linux 时第一个创建的用户)有权限访问的目录

    假设:

    第一个创建的用户名为: mura

    思源笔记的工作空间:/home/mura/siyuan/notes

    思源笔记 build 文件夹所在目录:/home/mura/siyuan/server/build

  2. 开始拉取最新镜像

docker pull b3log/siyuan:v1.5.4
docker pull b3log/siyuan:latest

3、运行容器

docker run -itd --name siyuan \
    --restart=always \
    -u 1000:1000 \
    -e LANG=zh_CN.UTF-8 \ 
    -e LC_ALL=zh_CN.UTF-8 \
    -v /home/mura/siyuan/notes:/home/siyuan/Documents/SiYuan \
    -v /home/mura/siyuan/server/build:/opt/siyuan/stage/build \
    -p 80:6806 \
    b3log/siyuan:latest

如果不修改端口

docker run -itd --name siyuan \
    --restart=always \
    -u 1000:1000 \
    -e LANG=zh_CN.UTF-8 \ 
    -e LC_ALL=zh_CN.UTF-8 \
    -v /home/mura/siyuan/notes:/home/siyuan/Documents/SiYuan \
    -p 6806:6806 \
    b3log/siyuan:latest
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    20036 引用 • 77110 回帖 • 5 关注
4 操作
Mura 在 2022-01-25 09:20:51 更新了该帖
Mura 在 2022-01-10 10:36:49 更新了该帖
Mura 在 2021-12-23 08:06:57 更新了该帖
Mura 在 2021-12-02 10:35:42 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 大侠高见。

    请问群晖 GUI 界面有办法这样自定义部署吗?

    谢谢。

    1 回复
  • 其他回帖
  • 我技术小白,所以还不知道怎么访问群晖 docker 里面的文件和配置……

    我还在研究研究

    谢谢。

  • Mura

    我没用过群晖,不知道怎么访问宿主机目录,只要能将 js 文件拷进去,就可以。

    还有一种思路就是在其他地方下载好镜像,生成容器后,进容器修改好 js 文件,再做成镜像传到 hub.docker.com 上去,然后再下载自己的镜像重新生成容器

    最简单的方法就是让开发人员改。。。

    以上方法均无特殊要求,全部是常规参数常规操作,所以群晖我觉得是可以的

    1 回复
  • Red

    搭好了,感谢

  • 查看全部回帖

推荐标签 标签

  • 30Seconds

    📙 前端知识精选集,包含 HTML、CSS、JavaScript、React、Node、安全等方面,每天仅需 30 秒。

    • 精选常见面试题,帮助您准备下一次面试
    • 精选常见交互,帮助您拥有简洁酷炫的站点
    • 精选有用的 React 片段,帮助你获取最佳实践
    • 精选常见代码集,帮助您提高打码效率
    • 整理前端界的最新资讯,邀您一同探索新世界
    488 引用 • 383 回帖
  • 招聘

    哪里都缺人,哪里都不缺人。

    189 引用 • 1056 回帖 • 1 关注
  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    483 引用 • 906 回帖 • 1 关注
  • abitmean

    有点意思就行了

    35 关注
  • Vue.js

    Vue.js(读音 /vju ː/,类似于 view)是一个构建数据驱动的 Web 界面库。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

    262 引用 • 664 回帖
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 518 关注
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 48 关注
  • HBase

    HBase 是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的 Google 论文 “Bigtable:一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统所提供的分布式数据存储一样,HBase 在 Hadoop 之上提供了类似于 Bigtable 的能力。

    17 引用 • 6 回帖 • 60 关注
  • Webswing

    Webswing 是一个能将任何 Swing 应用通过纯 HTML5 运行在浏览器中的 Web 服务器,详细介绍请看 将 Java Swing 应用变成 Web 应用

    1 引用 • 15 回帖 • 624 关注
  • 面试

    面试造航母,上班拧螺丝。多面试,少加班。

    324 引用 • 1395 回帖 • 1 关注
  • 正则表达式

    正则表达式(Regular Expression)使用单个字符串来描述、匹配一系列遵循某个句法规则的字符串。

    31 引用 • 94 回帖
  • Kafka

    Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

    35 引用 • 35 回帖
  • 禅道

    禅道是一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法 scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。

    6 引用 • 15 回帖 • 180 关注
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 5 关注
  • CloudFoundry

    Cloud Foundry 是 VMware 推出的业界第一个开源 PaaS 云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

    5 引用 • 18 回帖 • 150 关注
  • webpack

    webpack 是一个用于前端开发的模块加载器和打包工具,它能把各种资源,例如 JS、CSS(less/sass)、图片等都作为模块来使用和处理。

    41 引用 • 130 回帖 • 281 关注
  • 微软

    微软是一家美国跨国科技公司,也是世界 PC 软件开发的先导,由比尔·盖茨与保罗·艾伦创办于 1975 年,公司总部设立在华盛顿州的雷德蒙德(Redmond,邻近西雅图)。以研发、制造、授权和提供广泛的电脑软件服务业务为主。

    8 引用 • 44 回帖 • 1 关注
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3169 引用 • 8208 回帖
  • Kubernetes

    Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。

    109 引用 • 54 回帖
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖
  • 阿里巴巴

    阿里巴巴网络技术有限公司(简称:阿里巴巴集团)是以曾担任英语教师的马云为首的 18 人,于 1999 年在中国杭州创立,他们相信互联网能够创造公平的竞争环境,让小企业通过创新与科技扩展业务,并在参与国内或全球市场竞争时处于更有利的位置。

    43 引用 • 221 回帖 • 187 关注
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    96 引用 • 330 回帖
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 429 关注
  • Gitea

    Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

    4 引用 • 16 回帖 • 3 关注
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 677 关注
  • WebClipper

    Web Clipper 是一款浏览器剪藏扩展,它可以帮助你把网页内容剪藏到本地。

    3 引用 • 9 回帖 • 2 关注
  • 分享

    有什么新发现就分享给大家吧!

    245 引用 • 1776 回帖 • 1 关注