summaryrefslogtreecommitdiff
path: root/issues/task_003_deployment_prep.md
diff options
context:
space:
mode:
Diffstat (limited to 'issues/task_003_deployment_prep.md')
-rw-r--r--issues/task_003_deployment_prep.md58
1 files changed, 0 insertions, 58 deletions
diff --git a/issues/task_003_deployment_prep.md b/issues/task_003_deployment_prep.md
deleted file mode 100644
index a05c2eb..0000000
--- a/issues/task_003_deployment_prep.md
+++ /dev/null
@@ -1,58 +0,0 @@
-# Task 003: VPS Deployment Preparation (Apache + Systemd)
-
-Prepare the application for deployment on a VPS using Apache2 as a reverse proxy and Systemd for process management.
-
-## Target Environment
-- **OS:** Linux (VPS)
-- **Web Server:** Apache2
-- **Process Manager:** Systemd
-- **Directory Structure:**
- - Root: `/site/{fqdn}/`
- - Binary: `/site/{fqdn}/app`
- - Data: `/site/{fqdn}/data/` (Database location)
- - Webroot: `/site/{fqdn}/public/` (Static assets)
-
-## Plan
-
-### 1. Configuration Updates
-- Ensure the application can accept configuration via Environment Variables for:
- - `PORT` (Default: 8080)
- - `DB_PATH` (Default: `./task.db`, Target: `/site/{fqdn}/data/dashboard.db`)
- - `SESSION_KEY` (Secret)
- - `STATIC_DIR` (Optional: if we want to point to `public` explicitly)
-
-### 2. Create Deployment Artifacts
-Create a `deployment/` directory containing:
-
-#### A. Systemd Unit File (`deployment/task-dashboard.service`)
-- **Description:** Manages the Go application process.
-- **Key Settings:**
- - `ExecStart=/site/{fqdn}/app`
- - `WorkingDirectory=/site/{fqdn}/`
- - `User=www-data` (or specific user)
- - `Restart=always`
- - `EnvironmentFile=/site/{fqdn}/.env` (or inline env vars)
-
-#### B. Apache VHost Configuration (`deployment/apache.conf`)
-- **Description:** Reverse proxy configuration.
-- **Key Settings:**
- - Based on provided template.
- - `DocumentRoot /site/{fqdn}/public`
- - `ProxyPass / http://localhost:8080/`
- - `ProxyPassReverse / http://localhost:8080/`
- - Serve static assets directly via Apache for performance (optional but recommended).
-
-### 3. Documentation
-- Create `docs/deployment.md` with instructions:
- 1. **Build:** `go build -o app cmd/dashboard/main.go`
- 2. **Setup:**
- - `mkdir -p /site/{fqdn}/{data,public}`
- - Copy `app` to `/site/{fqdn}/`
- - Copy `web/static` content to `/site/{fqdn}/public/`
- - Copy `web/templates` to `/site/{fqdn}/templates` (or ensure app can find them)
- 3. **Service:** Install and enable systemd service.
- 4. **Apache:** Enable site and modules (`proxy`, `proxy_http`).
-
-## Considerations
-- **Static Files:** We should decide if Apache serves `/static` directly from `/site/{fqdn}/public` or if the Go app handles it. Serving via Apache is preferred for performance.
-- **Templates:** The Go app needs access to HTML templates. We need to ensure the `WorkingDirectory` allows relative path resolution to `web/templates` or configure an absolute path.