Files
wiki/project/infrastructure.md

4.4 KiB
Raw Blame History

title, description, published, date, tags, editor, dateCreated
title description published date tags editor dateCreated
Infrastructure true 2025-08-13T12:09:29.539Z markdown 2021-11-13T12:10:04.658Z

The Project's Infrastructure

Current solutions

Function Description Location Documentation
PaaS Cloudron.io is used to deploy and keep up-to-date web applications needed by the project https://my.phyllo.me Link to PaaS documentation
Website Grav is used as a Content Management System (CMS) https://phyllo.me Link to Website documentation
Git Gitea is used to host repositories for projects https://git.phyllo.me Link to Git documentation
Kan board Wekan is used for issue tracking https://kanboard.phyllo.me/ Link to Kan board documentation
Email Rainloop and the cloudron internal email server are used to provide email mailboxes for users https://mail.phyllo.me/ Link to Email documentation
Wiki Wiki.js is used to power the wiki https://wiki.phyllo.me/ Link to Wiki documentation

The Cloudron Platform-as-a-Service (PaaS)

  • Reverse DNS: my.phyllome.org
  • Access: SSH access via public key

Domains

Gandi is the registrar.

  • Domains: phyllome.org and phyllo.me are available
    • phyllome.org will eventually be used for production-ready services

Server

A bare-metal is rented from OVH

Hardware specifications

  • CPU: Intel Xeon E3-1245v2 - 4c/8t - 3.4 GHz/3.8 GHz
  • Memory: RAM 32 GB 1333 MHz
  • Storage: 2×480 GB SSD SATA, Soft RAID 0

Software

  • Operating system: Managed by Cloudron and based on Ubuntu Server 24.04 LTS.

Website

The webiste is powerd by Grav.

Learn about Grav

Wiki documentation

Set up

Git synchronization

The following allows for the Git repository https://git.phyllo.me/roots/wiki to be bilaterally synced with the wiki.

  • From the Cloudron Web User Interface, open a terminal session inside the wiki container.
  • Generate an SSH key pair inside this container and put in under /app/data/
  • Create a local repository path too, mkdir /app/data/repo
  • Log into with an admin account
  • Go to Modules > Storage and select Git.
  • Under Authentication Type, select ssh
  • Assuming the repository is hosted on git.phyllo.me and the roots organization, use ssh://git@git.phyllo.me:29418/roots/wiki.git under Repository URI
  • Under Branch, pick main
  • Under SSH Private Key Mode, pick path
  • Under SSH Private Key Path, pick /app/data/id_rsa
  • Under Default Author Name, pick lukas at phyllo me
  • Under Default Author Name, pick lukas
  • Under Local Repository Path, pick /app/data/repo
  • Choose Bidirectional sync and then force sync to check if everything is working as expected.

Adding new users to the Editor group

New users coming from Cloudron can be automatically added to the Editor group.

To do so,

  • Navigate to Administration > Authentication.
  • Under Active Strategies, select Cloudron.
  • Under Registration, make sure that Allow self-registration is enabled and add the Editors group to the Assign to group field.
  • It is also a good idea to add phyllo.me and phyllome.org to the Limit to specific email domains field.

Git

  • Two organizations:
    • Roots, for internally-developed projects
    • External, for external projects mirrored to the instance
  • SSO for all Cloudron users
  • Local root account
    • New password saved to lukas' password manager
    • TOTP 2FA enabled
  • Application can be configured under /app/data/app.ini
  • Email domain allow list is enabled. See below for the configuration:
 root@container:/app/data# cat app.ini 
; Add customizations here - https://docs.gitea.io/en-us/config-cheat-sheet/

[security]
SECRET_KEY = [Hidden]

[service]
EMAIL_DOMAIN_ALLOWLIST=phyllo.me,phyllome.org

Go to parent page