Sign inSign up

diarmuidk/astrometry-dockerised-solver

By diarmuidk

•Updated 10 months ago

Built from https://github.com/DiarmuidKelly/astrometry-dockerised-solver -- see upstream

Image
0

729

diarmuidk/astrometry-dockerised-solver repository overview

⁠Astrometry.net Dockerised Solver

Docker Image Version (latest semver) ghcr.io Docker Image Size Docker Pulls License

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⁠.

⁠Features

  • Multi-stage build - small runtime image (~500MB vs 2GB+ with build tools)
  • Multi-arch support - linux/amd64 and linux/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

⁠Quick Start

# 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.fits

⁠Available Commands

All 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 --help

Available binaries:

  • solve-field - main plate solving command
  • image2xy - extract sources from images
  • fit-wcs - fit WCS to xy lists
  • wcs-xy2rd, wcs-rd2xy - coordinate conversions
  • And more...

For detailed usage and command documentation, see the upstream Astrometry.net solving documentation⁠.

⁠Usage with astrometry-go-client

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",
})

⁠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}.fits

Then 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.fits

⁠Available Tags

Available on both DockerHub⁠ and GHCR⁠:

  • latest - most recent build from main branch
  • 0.97, 0.96, etc. - specific astrometry.net versions
  • main - development builds

⁠Versioning

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.97
  • 0.97.1 - Dockerfile optimization for 0.97
  • 0.98.0 - New upstream astrometry.net 0.98 release
⁠Release Process

For Dockerfile changes (patch bump):

  1. Create PR with changes
  2. Title PR with [PATCH] prefix (or fix:)
  3. Merge PR → auto-bumps to next patch version (e.g., 0.97.0 → 0.97.1)

For new upstream releases (major/minor bump):

  1. Upstream monitoring creates an issue
  2. Create PR with [MAJOR] title and update VERSION file to 0.98.0
  3. Merge PR → creates v0.98.0 release

Skip release:

  • Use [SKIP] prefix or docs:/chore: for non-release changes

⁠Contributing

Issues and PRs welcome! This repo is intentionally minimal - for solver functionality, contribute upstream to dstndstn/astrometry.net⁠.

⁠Building Locally
# 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 .
⁠Automated Builds

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.

⁠License

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.

⁠Acknowledgments

Tag summary

Content type

Image

Digest

sha256:ec37fb8ec…

Size

217.5 MB

Last updated

10 months ago

docker pull diarmuidk/astrometry-dockerised-solver