Overview of Installation and Integration
Jack Waugh last edited by Jack Waugh
For those curious about how this works:
The present discussion forum is implemented as an installation (or instance) of NodeBB, a freely available program for implementing discussion fora.
This instance of NodeBB is installed in a virtual machine (VM) rented from the firm of Linode.
NodeBB runs on top of an interpreter
Version management of the local installtion of
nodejsis provided by
asdf, a freely available program for managing installations of versions of commonly-used software tools.
The operating system is Ubuntu. Ubuntu is a software distribution that includes, among other components, the Linux kernel and the Gnu software tools. Ubuntu is substantially supported by a firm called Canonical. The Linux kernel and the Gnu tools together approximate the functionality and feel of the Unix operating system, which was invented at Bell Labs by Dennis Ritchie and Ken Thompson. The principal author of Linux is Linus Torvalds.
The reverse proxy is
nginx. It initially fields the web requests and forwards them (in the usual case) to the instance of NodeBB. It also handles the TLS.
The TLS certs are drawn from the "Let's Encrypt" nonprofit organization, via software from the Electronic Frontier Foundation (EFF).
The data (except pictures) persist via an instance of MongoDB.
Mail is handled by
A scheme of regular backups is in place, which copies the data to a VM that Jack Waugh runs for his personal stuff and another web site. The VM running this forum and the backup one are in different cities.
Scripts, code snippets, and documentation to facilitate rebuilding all the above in case something happens to it, reside on the Bitbucket web site, a service of the firm of Atlassian.
Everything mentioned above is free of monetary cost except the virtual machines at $60/year each. The suppliers of some of the other components do solicit donations (in particular, "Let's Encrypt" and EFF).
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le