Write the deployment manual, and keep the build context clean
docs/deployment.md is the server-side procedures: the compose file a server runs, building and publishing a release, first deployment, reverse proxy, upgrades and rollback, backups and restore, and a troubleshooting table. The compose file lives in the manual rather than in the repository, because the one at the root builds from source and is what development wants. The server's pulls a published image, pins a release tag, and publishes the admin port on the host's loopback instead of every interface — the panel is Basic Auth and nothing else, so where that port is bound is the whole of its security. .dockerignore keeps the image build off storage/ (the live database and the audio), .env (the admin password) and the leftover pgdata, which the build cannot read anyway and which fails it outright.
This commit is contained in:
+2
-1
@@ -4,7 +4,8 @@ What the app does. This file and the code must never disagree; when behaviour ch
|
||||
with it. Terms are defined in [CONTEXT.md](../CONTEXT.md), decisions and their reasons in
|
||||
[decisions.md](./decisions.md), and anything explicitly not in v1 in [later.md](./later.md).
|
||||
|
||||
Stack, configuration, and operations are in the [README](../README.md).
|
||||
Stack and configuration are in the [README](../README.md); running it on a server is in
|
||||
[deployment.md](./deployment.md).
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user