Skip to main content

Self-hosting

Self-hosting means you run Choir Master CMS yourself, on a server or Cloudflare account that you control, instead of having us host it. This part of the guide is for the person who installs and looks after that server. The choir's webmaster, who only edits the site in a browser, does not need it.

What you take on​

When you host it yourself, these are yours to do and to pay for:

What you get​

  • Every feature of the product. There are no plans on a self-hosted site: the member portal, tickets, donor records, receipts and the rest are all there. The plan names you see in the hosted service do not apply.
  • A custom style sheet. You can add your own CSS to the public pages. See Add a custom style sheet.
  • Your own defaults. A file, site.config.json, holds the text and settings a new site starts from. See Ship your own defaults.
  • Your choice of parts. The database, file storage, sessions, email service and bot check are each a setting, not a fixed choice.
  • Your data on your own systems.

What you do not get at version 1.6.12​

  • Card payments. Taking tickets or gifts by card online works only on sites we host, through a connected Stripe account. On a self-hosted site, tickets and gifts are recorded without a card payment. See Hosted and self-hosted: what is different.
  • The Email page in the admin panel. The page that lets a choir send its announcements through its own mail account belongs to the hosted service. On your own server you set up email in the server's settings instead. See Send announcements through a different service.

What you need before you start​

You needWhy
Node.js 22.13 or newer, or Docker, or a Cloudflare accountSomething to run the software on. Pick one.
A domain name and the ability to point it at your serverVisitors and members need an address, and it must be served over HTTPS.
A way to send emailMember login links, announcements, ticket confirmations and receipts.
A licence keyThe licence terms require one for every self-hosted site, even the free Community edition. It is for one website. The software starts without it, but then cannot tell you when a new version is out.

The software is called Choir Master CMS. You will see the name choir-manager on files, images and volumes: that is the same product under its older name, and it appears in the download's package.json, the Docker image name and the Cloudflare Worker name.

note

The licence lets you run the software for your own website only. Hosting sites for other organisations is not allowed (section A6 of the licence terms). A web designer may install it for a client if the client holds their own licence key.

How this part is arranged​

Read in this order the first time.

  1. Install gets a site running.
  2. Configure explains every setting: the settings every site needs, the database, file storage, sessions, the bot check, admin sign-in and email.
  3. Operate is for afterwards: licence key, updates, backups, security, logs and troubleshooting.

When the site is running, hand it to the choir's webmaster with Log in to the admin panel.