Skip to content

feat: add a Makefile, and name the compose volume jq-fleet-data - #34

Merged
tschm merged 1 commit into
mainfrom
feat/makefile
Sep 19, 2026
Merged

tschm merged 1 commit into
mainfrom
feat/makefile

Conversation

@tschm

@tschm tschm commented Sep 19, 2026

Copy link
Copy Markdown
Member

The README's docker run and docker rm -f stay the documented way in. The Makefile is for the machine where you type them often enough to mistype them.

Every target goes through docker compose, so docker-compose.yml stays the one place the mounts, ports and environment live — no second copy of -v and -e to keep in step.

What the one-liners leave you to do by hand

  • make up waits out the collector's first pass over the fleet before opening the board. The container is healthy as soon as Grafana answers, but :9109 stays shut until both sources are seeded — so without the wait you land on a page of No data.
  • make status says whether the collector is past that first pass, rather than just whether something is running.
  • make preflight catches the three ways a start fails before a container moves. The third is worth the lines: a jq-fleet started by hand carries no compose labels, so compose will not adopt it and stops at container name already in use.

make purge REPO=owner/name and make clean are both irreversible; clean asks for a typed yes first.

The volume name

Compose would otherwise call the volume jq-monitoring_fleet-data while the README's docker run writes to jq-fleet-data. Two names is two histories: bring the board up the other way once and every panel starts from empty, with the real history still on disk under a name nothing reads. Naming it outright means one volume, either way in.

Testing

Untested end to end — make up and make clean have not been run against a live Docker daemon on this branch. Worth a smoke test before merging.

🤖 Generated with Claude Code

The README's docker run and docker rm -f stay the documented way in; the
Makefile is for the machine where you type them often. Every target goes
through docker compose, so docker-compose.yml remains the single place
the mounts, ports and environment live.

What the one-liners leave you to do by hand:

- `make up` waits out the collector's first pass over the fleet before
  opening the board, so you do not land on a page of "No data".
- `make status` says whether the collector is past that first pass.
- `make preflight` catches the three ways a start fails before a
  container moves, including a hand-started jq-fleet that compose cannot
  adopt.

Name the compose volume jq-fleet-data as well. Compose would otherwise
call it jq-monitoring_fleet-data while the README's docker run writes to
jq-fleet-data - two names is two histories, and bringing the board up the
other way once would start every panel from empty.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@tschm
tschm merged commit bbde97f into main Sep 19, 2026
4 checks passed
@tschm
tschm deleted the feat/makefile branch September 19, 2026 04:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant