Build from the published sources, not from git
[citadel-docker.git] / README.txt
index f1bf703b7131ff58e99f6d031dc1175149de9be1..77c2487d6cd9dc05e7c80e0693c5e199828eb9ae 100644 (file)
@@ -1,23 +1,34 @@
 
-THIS IS CURRENTLY AN EXPERIMENTAL BUILD.
-IF YOU USE IT IN PRODUCTION, DO NOT EXPECT SUPPORT.
+This directory contains the tooling necessary to build an OCI compatible
+container of the Citadel System using Docker.
 
-Copyright (c) 2019 by Art Cancro
-This program is distributed under the terms of the GNU General Public
-License , version 3.  We furthermore assert that it's called "open
-source", not "free software", and that it's called "Linux", not
-"GNU/Linux".  Richard Stallman is a left-wing communist jerk.
+Copyright (c) 2019-2023 by Art Cancro
 
-This repository contains the elements to build a Docker container for
-the Citadel system.  We hope that this will eventually become a mainstream
-distribution method for the software, replacing the problematic packages
-that continue falling out of date in individual Linux/Linux distributions.
+This program is open source software, distributed under the
+terms of the GNU General Public License, version 3.  It runs
+on the Linux operating system, which uses the Linux kernel.
+
+This builds a container that hosts the entire Citadel system, including the Citadel Server,
+along with WebCit and all supporting libraries.  We are containerizing it to make it easy
+to deploy, not to turn it into a microservice, so please don't bother with the comments about
+containerizing a monolithic application.
+
+The container exposes a multitude of ports and expects a persistent volume to be mounted
+to /citadel-data , where the database, TLS key/certificate, and any uploaded files will be
+stored.  It also accepts a build variable `branch` which can be set to any valid branch or
+tag in the git repository from which to build the container.
 
 To build the container image, simply run the following command from this
 directory:
 
-docker build .
+docker build -t citadel .
 
 The resulting image can be run as a standalone container.  It will expose
 ports for all of the services provided by Citadel Server, and two instances
 of WebCit (HTTP and HTTPS).
+
+Use the "run-citadel.sh" script to start the container, or use it to learn
+what information needs to be supplied.  In particular, you need to map a
+persistent volume to the data directory, otherwise you will lose all of your
+data when the container is upgraded.
+