docs: explain self-hosting, content import and safe upgrades
This commit is contained in:
@@ -1,5 +1,9 @@
|
||||
# Deployment
|
||||
|
||||
For the portfolio builder's first installation, owner commands, persistent
|
||||
SQLite storage, and backup/restore, see [SELF_HOSTING.md](SELF_HOSTING.md).
|
||||
Set the public `SITE_URL` in `<DEPLOY_PATH>/runtime.env` before deployment.
|
||||
|
||||
The Gitea Actions workflow in `.gitea/workflows/ci-cd.yml` verifies every pull
|
||||
request and every push to `main`. A successful push to `main` builds one
|
||||
verified Docker image on the shared host daemon, smoke-tests it, and activates
|
||||
@@ -8,7 +12,9 @@ that exact commit-tagged image over SSH without uploading source or rebuilding.
|
||||
Release manifests are stored in `<DEPLOY_PATH>/releases/<commit-sha>`. Each
|
||||
manifest records the immutable image tag and Gitea run number. The `current`
|
||||
symlink is changed only after the new container is healthy. If startup fails,
|
||||
the deployment script restarts the previous image without rebuilding it.
|
||||
the deployment script stops short of automatic rollback: startup may have
|
||||
migrated the database. Restore the pre-upgrade backup with the matching older
|
||||
image using the procedure in `SELF_HOSTING.md`.
|
||||
After health succeeds, the Git checkout at `<DEPLOY_PATH>` is fast-forwarded to
|
||||
the exact deployed commit. Deployment refuses to overwrite tracked server-side
|
||||
changes or a checkout that has diverged from `origin/main`.
|
||||
@@ -108,9 +114,10 @@ docker compose \
|
||||
|
||||
This legacy path builds `amiirkhl-portfolio:latest` and is intentionally kept
|
||||
outside the normal CI deployment. Existing source-based release directories can
|
||||
still be started with their original Compose file during migration. Automatic
|
||||
rollback begins with the first successful image-based release because older
|
||||
release directories do not contain `release.env` image metadata.
|
||||
still be started with their original Compose file during migration. Rollback is
|
||||
manual: verify schema compatibility or restore the pre-upgrade backup together
|
||||
with its matching application image. Older release directories do not contain
|
||||
`release.env` image metadata.
|
||||
|
||||
## Pipeline timing verification
|
||||
|
||||
|
||||
Reference in New Issue
Block a user