diff options
| author | bndw <ben@bdw.to> | 2026-02-14 08:11:33 -0800 |
|---|---|---|
| committer | bndw <ben@bdw.to> | 2026-02-14 08:11:33 -0800 |
| commit | b9120489c454877ff623e65db48ec97f402bf8ed (patch) | |
| tree | 4d903a9ad1307818fa4184c9cb7d329ea2386151 /README.md | |
| parent | f0dfabe5b7f1f8d23169c6e62a2f0c27bd6c5463 (diff) | |
Store deployment configs locally for binary deployments
For binary and static deployments, .ship/service and .ship/Caddyfile are
now written to the local working directory (similar to git deployments)
instead of being regenerated on every deployment.
- On initial deployment, create local .ship/ directory with generated configs
- On subsequent deployments, upload from local .ship/ files
- Caddyfile is never regenerated, preserving custom routes
- Systemd service is regenerated only when --memory, --cpu, or --args change
This prevents custom Caddyfile routes from being overwritten and makes
binary deployment workflow consistent with git deployment workflow.
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 6 |
1 files changed, 6 insertions, 0 deletions
| @@ -70,6 +70,12 @@ GOOS=linux GOARCH=amd64 go build -o myapp | |||
| 70 | ship --binary ./myapp --domain api.example.com | 70 | ship --binary ./myapp --domain api.example.com |
| 71 | ``` | 71 | ``` |
| 72 | 72 | ||
| 73 | On first deployment, Ship creates a `.ship/` directory in your current working directory containing: | ||
| 74 | - `.ship/service` - systemd unit file | ||
| 75 | - `.ship/Caddyfile` - Caddy reverse proxy config | ||
| 76 | |||
| 77 | These files are uploaded on each deployment. You can edit them locally to customize your deployment (add extra Caddy routes, adjust systemd settings). The systemd service is regenerated when you update resource limits with `--memory`, `--cpu`, or `--args` flags. The Caddyfile is never regenerated, so your custom routes won't be overwritten. | ||
| 78 | |||
| 73 | You can version control `.ship/` or add it to `.gitignore` — it's your choice. | 79 | You can version control `.ship/` or add it to `.gitignore` — it's your choice. |
| 74 | 80 | ||
| 75 | ## Commands | 81 | ## Commands |
