35 lines
1.4 KiB
Markdown
35 lines
1.4 KiB
Markdown
# NPM (Nginx Proxy Manager) — Runtipi app image
|
|
|
|
This app runs a **fork** of NginxProxyManager tailored for Runtipi.
|
|
|
|
## Current image: `:2.13.5-interim` (thin fork)
|
|
|
|
`Dockerfile` here is a stop-gap: upstream `jc21/nginx-proxy-manager:2.13.5` plus
|
|
network diagnostic tools (`ping`, `dig`/`nslookup`, `traceroute`, `mtr`, `nc`,
|
|
`ss`, `netstat`, `tcpdump`, `whois`, `nmap`, `telnet`, `wget`) so they are
|
|
available via `docker exec` and persist across Runtipi restarts/updates. NPM
|
|
itself is unchanged.
|
|
|
|
Build & push:
|
|
|
|
./build.sh
|
|
|
|
## Planned: from-source build (`:2.13.5` / `:latest`)
|
|
|
|
The real fork lives at `git.alexzaw.dev/alexz/nginx-proxy-manager` (mirror of
|
|
upstream NginxProxyManager). Runtipi tailoring (the net tools above, plus future
|
|
custom network-management UI) goes on the `runtipi` branch off the `v2.13.5`
|
|
tag.
|
|
|
|
The from-source pipeline:
|
|
|
|
1. `git clone` the fork into `~/projects/nginx-proxy-manager`, checkout `runtipi`.
|
|
2. `scripts/frontend-build` — builds the Vue frontend into `frontend/dist`
|
|
(needs node/yarn; uses `NODE_OPTIONS=--openssl-legacy-provider`).
|
|
3. `docker buildx build -f docker/Dockerfile` with
|
|
`BASE_IMAGE=nginxproxymanager/nginx-full:certbot-node` and the `BUILD_*`
|
|
args, tagging `git.alexzaw.dev/alexz/nginx-proxy-manager:2.13.5` + `:latest`.
|
|
|
|
Once that builds clean, point `docker-compose.json` at `:2.13.5` and retire the
|
|
interim image.
|