/hive-metastore-standalone

Apache Hive Metastore in Standalone Mode With Docker

Primary LanguageDockerfileMIT LicenseMIT

Hive Metastore Standalone Docker Image 🐝 🐳

This repo creates a Docker image of a completely standalone Hive Metastore suitable for running in a Github Workflow or as a Docker image without the need for compose.

Unlike other Hive Metastore Docker images, this Docker image can be run without any other containers.

  • ✅ No S3
  • ✅ No localstack
  • ✅ No minio
  • ✅ No PostgreSQL
  • ✅ No Hive
  • ✅ No Hadoop
  • ✅ No other containers

The image uses Hive Metastore Standalone configured to run embedded Derby for the DB and the local filesystem for the FS.

NOTE: Only one process can connect to the metastore at a time because embedded Derby only supports one connection at a time. This should be fine for integration tests.

Usage

The package is published to the Github Container Registry.

docker pull ghcr.io/criccomini/hive-metastore-standalone:latest

Github Workflow

You can use the Hive Metastore for integration tests in your Github Workflows using this service block:

    services:
      hive-metastore:
        image: ghcr.io/criccomini/hive-metastore-standalone:latest
        ports:
          - 9083:9083

Logging

By default the Hive Metastore will log at INFO level. You can override this by setting the HMS_LOGLEVEL environment variable for the container.

Acknowledgements

This image is based on @naushadh's hive-metastore repo.