summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2025-04-17 09:36:34 -0500
committerFrederick Muriuki Muriithi2025-04-17 09:36:34 -0500
commit3765af0af5ea2bdd9d114205fb237fab0e124731 (patch)
tree386f49941c803b666edda9e2505360f65f5f1377
parent921f5d49360b8c1b6bb6c2f440ff6212d58e08d3 (diff)
downloadgn-gemtext-3765af0af5ea2bdd9d114205fb237fab0e124731.tar.gz
GN, production, migration: New topic documentation
Initialise documentation on the major steps involved in the setup and migration of the production system across machines.
-rw-r--r--topics/deploy/migrating-production-across-machines.gmi47
1 files changed, 47 insertions, 0 deletions
diff --git a/topics/deploy/migrating-production-across-machines.gmi b/topics/deploy/migrating-production-across-machines.gmi
new file mode 100644
index 0000000..10adba7
--- /dev/null
+++ b/topics/deploy/migrating-production-across-machines.gmi
@@ -0,0 +1,47 @@
+# Migrating Production Across Machines
+
+## Tags
+
+* type: documentation, docs, doc
+* status: in-progress
+* assigned: fredm
+* priority: undefined
+* keywords: migration, production, genenetwork
+* interested-parties: pjotrp, zachs
+
+## Introduction
+
+Recent events (Late 2024 and early 2025) have led to us needing to move the production system from one machine to the other several time, due to machine failures, disk space, security concerns, and the like.
+
+In this respect, a number of tasks rise to the front as necessary to accomplish for a successful migration. Each of the following sections will detail a task that's necessary for a successful migration.
+
+## Set Up the Database
+
+* Extract: detail this — link to existing document in this repo. Also, probably note that we symlink the extraction back to `/var/lib/mysql`?
+* Configure: detail this — link to existing document in this repo
+
+## Set Up the File System
+
+* TODO: List the necessary directories and describe what purpose each serves. This will be from the perspective of the container — actual paths on the host system are left to the builders choice, and can vary wildly.
+* TODO: Prefer explicit binding rather than implicit — makes the shell scripts longer, but no assumptions have to be made, everything is explicitly spelled out.
+
+## Container Configurations: Secrets
+
+* TODO: Detail how to extract/restore the existing secrets configurations in the new machine
+
+## Build Production Container
+
+* TODO: Add notes on building
+* TODO: Add notes on setting up systemd
+
+## NGINX
+
+* TODO: Add notes on streaming and configuration of it thereof
+
+## SSL Certificates
+
+* TODO: Add notes on acquisition and setup of SSL certificates
+
+## DNS
+
+* TODO: Migrate DNS settings