Files
eleith 66d9f94216
ci/woodpecker/pr/build-dane-verify Pipeline was successful
ci/woodpecker/pr/build-porkbun-ddns Pipeline was successful
ci/woodpecker/push/build-dane-verify Pipeline was successful
ci/woodpecker/push/build-hledger Pipeline was successful
ci/woodpecker/push/build-nvim Pipeline was successful
ci/woodpecker/push/build-playwright Pipeline was successful
ci/woodpecker/push/build-porkbun-ddns Pipeline was successful
Align CI tags, PR checks, and docs
2026-10-24 08:56:01 -07:00

32 lines
997 B
Markdown

# 🛠 Building
Build from the repo root:
```bash
docker build -t porkbun-ddns ./porkbun-ddns
docker build -t hledger ./hledger
```
Check the container README and Dockerfile for build options
## Dockerfiles
- Prefer supported Alpine releases
- Combine related `RUN` commands for smaller image sizes
- Use `ENTRYPOINT` for dedicated commands. Keep toolchain images usable by CI shells.
- Run as non-root where practical. Document required mounts and capabilities.
## Shell scripts
- Keep functions focused and `main` easy to follow.
- Use `set -euo pipefail` in Bash scripts.
- Use `jq` for JSON and `awk`, `sed`, or `grep` for text.
- Give network requests timeouts and return nonzero on failures.
## Adding a container
1. Add its directory, `Dockerfile`, scripts, and README with usage and arguments.
2. Add [tests and PR checks](testing.md) in GitHub Actions and Woodpecker.
3. Add [release workflows and cleanup registration](releases.md).
4. Add it to [What's inside?](../README.md).