Skip to content

Add action to build and push docker to ghcr.io#348

Open
bkeepers wants to merge 2 commits into
felt:mainfrom
bkeepers:main
Open

Add action to build and push docker to ghcr.io#348
bkeepers wants to merge 2 commits into
felt:mainfrom
bkeepers:main

Conversation

@bkeepers

@bkeepers bkeepers commented May 13, 2025

Copy link
Copy Markdown

This adds a GitHub Action to build and publish to ghcr.io on push so users easily access a pre-built docker image.

$ docker run -it --rm \
  -v /tiledata:/data \
  ghcr.io/felt/tippecanoe:latest \
  tippecanoe --output=/data/output.mbtiles /data/example.geojson

It should automatically tag the releases, e.g.

  • latest release: ghcr.io/felt/tippecanoe:latest
  • major versions: ghcr.io/felt/tippecanoe:2
  • PRs: ghcr.io/felt/tippecanoe:pr-348
  • branches ghcr.io/felt/tippecanoe:branchname

Containers will also show up in the sidebar by releases. You can see what the first build looks like on my fork: https://github.com/bkeepers/tippecanoe/pkgs/container/tippecanoe

@e-n-f

e-n-f commented May 13, 2025

Copy link
Copy Markdown
Collaborator

Thanks for the contribution. I am wary of approving because I don't understand the full implications of using:

password: ${{ secrets.GITHUB_TOKEN }}

Would you mind linking to documentation about how authentication works on this docker repository? Thanks.

@bkeepers

Copy link
Copy Markdown
Author

No problem, here are overall docs on Publishing docker images, and here are docs on GITHUB_TOKEN secret.

Before each job begins, GitHub fetches an installation access token for the job. The GITHUB_TOKEN expires when a job finishes or after a maximum of 24 hours.

People with admin permissions to an enterprise, organization, or repository, can set the default permissions to be either permissive or restricted.

@simon04

simon04 commented Aug 1, 2025

Copy link
Copy Markdown

Related PRs: #282, #317
Related issue: #167

@Nicba1010

Copy link
Copy Markdown

Any movement on this? I had to resort to publishing my own image for this but it would be cool if this could be solved ofically

@simon04

simon04 commented Apr 4, 2026

Copy link
Copy Markdown

For the moment, https://hub.docker.com/r/versatiles/versatiles-tippecanoe seems to be a decent alternative.

VersaTiles is a completely FLOSS stack for generating, distributing, and using map tiles based on OpenStreetMap data, free of any commercial interests.
https://versatiles.org/

@bkeepers

Copy link
Copy Markdown
Author

I set up a nightly docker build at https://github.com/openwatersio/tippecanoe. Everything is tagged with release versions. I didn't build past versions, but going forward it will build any new releases.

docker pull ghcr.io/openwatersio/tippecanoe

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants