草庐IT

开源写作平台WriteFreely(折腾篇)

杨浦老苏 2023-10-29 原文

设置向导

除了直接修改 config.ini 之外,你还可以进入容器用命令行进行设置

SSH 客户端执行下面的命令

# 生成 config.ini
docker exec -it writefreely ./writefreely --config

也可以通过群晖的 终端机

一步一步跟着填入就可以了,但是需要说明的是,这种方式生成的 config.ini 在容器内,后续修改不方便,所以老苏并不建议,不过可以了解一下

数据库

在上篇的默认安装中,使用的是 SQLite 做为数据库,在 single_user = false ,也就是多人模式下,可能会存在性能不足的情况,老苏打算用群晖自带的 MariaDB 来做个替换

WriteFreely 目前支持 SQLiteMySQL,所以老苏还是直接用的群晖的 MariaDB 10,通过 phpMyAdmin 创建了名为 writefreely 的数据库

为了便于说明,我们假设数据库密码为 123456

接下来,我们要需要改 config.ini 中关于数据库的部分,按照我们的设置,替换为下面的代码

[database]
type     = mysql
username = writefreely
password = 123456
database = writefreely
host     = 192.168.0.197
port     = 3307
tls      = false

数据库部分的参数说明:

参数描述缺省值
type数据库驱动程序类型。有效选项:mysqlsqlite3
username数据库用户名
password数据库密码
database数据库名称
host数据库主机名localhost
port数据库主机端口3306
tls是否使用TLS连接到数据库false

更多的参数说明,请阅读官方文档:https://writefreely.org/docs/latest/admin/config

修改保存后,需要重启容器,在日志中会看到

Connecting to mysql database...

phpMyAdmin 中也能看到表了

这说明现在 WriteFreely 已经在使用 MariaDB 而不是 SQLite

反向代理

如果要实现公网访问,还需要做反向代理处理

照例还是全选

完成之后,还需要修改 config.ini,在 [app] 中找到 host

将原来的 host 后面的 http://192.168.0.197:8130 改成域名 https://域名:端口,保存后还是要重启容器才能生效

Admin --> Settings 中,可以看到 host 已更改成功了

客户端

https://write.as/apps 能找到 WriteFreely 的各个平台应用程序

注册Fediverse

要实现去中心化访问,需注册加入Fediverse,注册加入是有入选标准的

添加服务器的标准:https://codeberg.org/fediverse/fediparty/src/branch/main/ADDING-SERVER.md

老苏属于实验性的新服务器,所以就不继续往下折腾了

参考文档

writefreely/writefreely: A clean, Markdown-based publishing platform made for writers. Write together and build a community.
地址:https://github.com/writefreely/writefreely

WriteFreely
地址:https://writefreely.org/

Configuring WriteFreely — WriteFreely Documentation
地址:https://writefreely.org/docs/latest/admin/config

有关开源写作平台WriteFreely(折腾篇)的更多相关文章

  1. python - 开源 Twitter 克隆(在 Ruby/Python 中) - 2

    关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭6年前。Improvethisquestion是否有任何用Ruby或Python编写的生产就绪的开源Twitter克隆?我对功能丰富的实现更感兴趣,而不仅仅是简单的Twitter消息(例如:API、FBconnect、通知等)谢谢!

  2. Gradle 自动化构建开源工具 - 2

    文章目录写在前面1、下载与安装(windows)1.1、idea中配置gradle2、基础知识(Gradle6.9为例)2.1、Gradle脚本语法2.1.1、dependsOn2.1.2、创建动态任务2.1.3、增加任务行为2.1.4、参数2.1.5、Ant任务2.1.6、方法2.1.7、默认任务2.1.6、依赖任务的不同输出3、java项目中使用3.1、在已有项目中构建gradle3.2、在新建项目时构建gradle(idea)3.3、gradle项目目录结构3.4、build.gradle3.4.1、plugins3.4.2、repositories3.4.3、dependencies3

  3. NFT交易平台开发 创建NFT数字藏品平台 - 2

    为什么需要NFT市场?NFTMarketplace允许用户购买、出售、交易、查看或创建自己的NFT,就像他们需要一个市场来购买物理或数字世界中的大多数产品一样。几乎每个人都可以进入NFT市场,但要做到这一点,用户必须满足以下要求:一个NFT市场用户账户,允许您在给定平台上购买NFT。你需要一个与区块链兼容的加密钱包来购买NFT。NFTMarketplace非常重要,因为它连接了买卖双方,并为用户提供了多种工具来快速创建自己的NFT。艺术家可以在市场上列出要出售的NFT,买家可以通过投标过程探索市场并购买物品。NFT市场开发过程解释创建NFT市场是一个耗时的过程,需要编程知识和理解。那么搭建NF

  4. Ruby跨平台EOF符号的写法 - 2

    在Ruby中是否有一种平台无关的方式将EOF符号写入字符串。在*nix中,我认为符号是^D,但在Windows中是^Z,这就是我问的原因。 最佳答案 EOF不是一个字符,它是一个状态。终端使用控制字符来表示此状态(C-d)。没有这样的事情是“读一个EOF字符”,写一个也是一样的。如果您正在写入文件,请在完成后将其关闭。看这个mailinglistpost:ItsoundslikeyouarethinkingofEOFasanin-bandbutspecialcharactervaluethatmarkstheendoffile.It

  5. 停车系统源码-基于springboot+uniapp开源项目 - 2

    Iparking停车收费管理系统-可商用介绍Iparking是一款基于springBoot的停车收费管理系统,支持封闭车场和路边车场,支持微信支付宝多种支付渠道,支持多种硬件,涵盖了停车场管理系统的所有基础功能。技术栈Springboot,MybatisPlus,Beetl,Mysql,Redis,RabbitMQ,UniApp功能云端功能序号模块功能描述1系统管理菜单管理配置系统菜单2系统管理组织管理管理组织机构3系统管理角色管理配置系统角色,包含数据权限和功能权限配置4系统管理用户管理管理后台用户5系统管理租户管理多租户管理6系统管理公众号配置租户公众号配置7系统管理操作日志审计日志8系统

  6. ruby-on-rails - 有没有很好的引用(开源)Rails NoSQL应用程序? - 2

    我有兴趣了解使用nosql将如何影响rails应用程序的架构/设计/代码。有人知道使用nosql持久性的开源rails应用程序的一个好例子吗?谢谢 最佳答案 看看这些项目:卡桑德拉用法atDigg。卡桑德拉用法atTwitter。Friendly用法atFetLife(nsfw)。最后,MyNoSQL是一个提供nosql相关信息的好网站。 关于ruby-on-rails-有没有很好的引用(开源)RailsNoSQL应用程序?,我们在StackOverflow上找到一个类似的问题:

  7. 视频融合技术解决方案,三维全景拼接赋能平台 - 2

    近年来,随着信息化时代的到来,三维全景拼接以视频监控领域为代表的智能硬件公司迅速崛起,随后全国各地在视频监控领域进行了大量的建设。但随着摄像头数量的增加,视频监控画面离散、庞杂、关联性差等诸多问题日渐凸显。如何优化现有视频技术,助力管理者或使用者有效、直观、准确地掌控现场实时动态,成为我国信息化前行路上面临的新课题。视频融合技术平台解决方案北京智汇云舟科技有限公司成立于2012年,专注于创新性的“视频孪生(实时实景数字孪生)”技术研发与应用。公司依托自研三维地理信息引擎(3DGIS),融合建筑信息模型(BIM)、视频监控(Video)、人工智能(AI)及物联网(IOT)等多种技术,并在此基础上

  8. ruby - 如何指定 gem 仅是 JRuby 平台? - 2

    我正在开发一个只适用于JRuby平台的gem。如何在我的.gemspec中指定它? 最佳答案 你可以简单地输入gemspecspec.platform='java'表示它仅适用于JRuby。具体设置平台可以看一下:RubygemSpecificationReference 关于ruby-如何指定gem仅是JRuby平台?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/189366

  9. ruby-on-rails - 选择 Ruby on Rails 作为基于浏览器的在线游戏平台 - 2

    对于类似Travian的在线策略游戏,我有一些(我认为)非常棒的想法。有些内容我还没有想通,还有一些我还不知道的挑战。这是一个相当大的项目,对于(还)不是熟练的Web开发人员的人来说可能太重了。我还是想试一试,但我在选择平台时遇到了麻烦。世界上的“规模”最近被抛得一团糟,我看到RubyonRails因规模不佳而受到抨击,所以我来这里是为了得到一些答案。我喜欢RubyonRails,无论是Ruby还是Rails。我当然不是这方面的专家,但我喜欢使用它。我之前也使用过Python+Django,也使用过PHP(我不喜欢它。)理想情况下,假设每个服务器有7000名玩家,大概每秒要处理大量数据

  10. ruby-on-rails - 有谁知道 Ruby On Rails 的任何跨平台 GUI 日志查看器? - 2

    我厌倦了使用:tail-fdevelopment.log跟踪我的Rails日志。相反,我想要在网格中显示信息并允许我对每个日志消息进行排序、过滤和查看堆栈跟踪的东西。有谁知道用于显示Rails日志的GUI工具。理想情况下,我想要一个独立的应用程序(不是Netbeans或Eclipse中的东西) 最佳答案 Splunk,有一个免费版本,限制为500mb,但具有与完整版本相同的所有功能。 关于ruby-on-rails-有谁知道RubyOnRails的任何跨平台GUI日志查看器?,我们在St

随机推荐