A minimal, maintained Docker image for the Astrometry.net plate solver - solver binaries only, no web app.
Available on: Docker Hub • GitHub Container Registry
Source Code: GitHub Repository
Built specifically for use with astrometry-go-client.
- Multi-stage build - small runtime image (~500MB vs 2GB+ with build tools)
- Multi-arch support -
linux/amd64andlinux/arm64 - Release-aligned - tracks upstream astrometry.net releases
- Automated builds - GitHub Actions builds and publishes to GHCR
- Upstream monitoring - auto-creates issues when new astrometry.net releases are published
# Pull from DockerHub
docker pull diarmuidk/astrometry-dockerised-solver:latest
# Show help
docker run --rm diarmuidk/astrometry-dockerised-solver:latest solve-field --help
# Check version
docker run --rm diarmuidk/astrometry-dockerised-solver:latest solve-field --version
# Solve an image (mount your index files and image directory)
docker run --rm \
-v /path/to/index/files:/usr/local/astrometry/data:ro \
-v /path/to/images:/data \
diarmuidk/astrometry-dockerised-solver:latest \
solve-field /data/your-image.fitsAll astrometry.net solver binaries are included. Simply replace solve-field with any command:
# Main plate solving command
docker run --rm diarmuidk/astrometry-dockerised-solver:latest solve-field --help
# Other available commands:
docker run --rm diarmuidk/astrometry-dockerised-solver:latest image2xy --help
docker run --rm diarmuidk/astrometry-dockerised-solver:latest fit-wcs --help
docker run --rm diarmuidk/astrometry-dockerised-solver:latest wcs-xy2rd --help
docker run --rm diarmuidk/astrometry-dockerised-solver:latest wcs-rd2xy --helpAvailable binaries:
solve-field- main plate solving commandimage2xy- extract sources from imagesfit-wcs- fit WCS to xy listswcs-xy2rd,wcs-rd2xy- coordinate conversions- And more...
For detailed usage and command documentation, see the upstream Astrometry.net solving documentation.
This image is designed to work seamlessly with the astrometry-go-client:
// Use the containerized solver instead of the web API
client := astrometry.NewClient(astrometry.Config{
SolverType: astrometry.LocalDocker,
DockerImage: "diarmuidk/astrometry-dockerised-solver:latest",
IndexPath: "/path/to/index/files",
})The image includes one sample index file (index-4119.fits) covering ~20-30° field widths.
For complete coverage, download additional index files (available here at astrometry.net):
# Download to a local directory
mkdir -p ./index-files
cd ./index-files
# Download index files for your field of view
# See: http://data.astrometry.net/
wget http://data.astrometry.net/4100/index-41{19,18,17}.fitsThen mount this directory when running:
docker run --rm \
-v $(pwd)/index-files:/usr/local/astrometry/data:ro \
-v $(pwd):/data \
diarmuidk/astrometry-dockerised-solver:latest \
solve-field /data/image.fitsAvailable on both DockerHub and GHCR:
latest- most recent build frommainbranch0.97,0.96, etc. - specific astrometry.net versionsmain- development builds
This project follows a semantic versioning scheme aligned with upstream:
Format: MAJOR.MINOR.PATCH
MAJOR.MINOR- Matches upstream astrometry.net version (e.g.,0.97)PATCH- Increments for Dockerfile fixes/improvements
Examples:
0.97.0- Initial build of astrometry.net 0.970.97.1- Dockerfile optimization for 0.970.98.0- New upstream astrometry.net 0.98 release
For Dockerfile changes (patch bump):
- Create PR with changes
- Title PR with
[PATCH]prefix (orfix:) - Merge PR → auto-bumps to next patch version (e.g.,
0.97.0→0.97.1)
For new upstream releases (major/minor bump):
- Upstream monitoring creates an issue
- Create PR with
[MAJOR]title and update VERSION file to0.98.0 - Merge PR → creates
v0.98.0release
Skip release:
- Use
[SKIP]prefix ordocs:/chore:for non-release changes
Issues and PRs welcome! This repo is intentionally minimal - for solver functionality, contribute upstream to dstndstn/astrometry.net.
# Build default version (0.97)
docker build -t astrometry-solver .
# Build specific version
docker build --build-arg ASTROMETRY_VERSION=0.97 -t astrometry-solver:0.97 .
# Multi-arch build
docker buildx build --platform linux/amd64,linux/arm64 -t astrometry-solver .This repo uses GitHub Actions for automated builds and upstream monitoring:
- Build pipeline (
.github/workflows/build-and-push.yml) - Builds multi-arch images and pushes to both GHCR and DockerHub on version tags - Upstream monitoring (
.github/workflows/check-upstream-release.yml) - Runs daily to check for new astrometry.net releases and creates issues
See the Versioning section for the release process.
This repo carries the same license as the upstream - kept up to date 14.12.2025. Astrometry.net has it's own License - see upstream repo for details.
- astrometry.net - upstream project
- astrometry-go-client - Go client for using this solver
- dam90/astrometry - Inspiration for the containerized approach
- Reference original DockerFile dstndstn/astrometry.net