https://github.com/metabase/druid-docker
Docker image to run simple Druid DB cluster for test purposes
https://github.com/metabase/druid-docker
Last synced: 4 months ago
JSON representation
Docker image to run simple Druid DB cluster for test purposes
- Host: GitHub
- URL: https://github.com/metabase/druid-docker
- Owner: metabase
- Created: 2020-02-22T03:08:58.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-02-08T21:44:57.000Z (over 3 years ago)
- Last Synced: 2024-12-27T12:09:17.916Z (5 months ago)
- Language: Shell
- Size: 48.8 KB
- Stars: 1
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
### DockerHub
[`metabase/druid`](https://hub.docker.com/repository/docker/metabase/druid)
[](https://microbadger.com/images/metabase/druid)### Build It
```bash
docker build -t metabase/druid:0.20.2 .
```The build logic ingests the data in `rows.json` by executing the ingestion spec task `task.json`. This is done in the script `ingest.sh`; tweak as needed.
Why ingest data as part of the build process? In some cases ingestion and indexing can take 10 minutes, on top of
using an obnoxious amount of memory. Better to do it during build so we can use the image right out of the box instead
of making CI super slow.### Use It
```bash
docker run -p 8081:8081 -p 8082:8082 -p 8888:8888 -it metabase/druid:0.20.2
```#### Env Vars
For running Metabase tests you shouldn't need to change any of these.
* `CLUSTER_SIZE` -- Druid config to use. Currently one of `nano-quickstart`, `micro-quickstart`, `small`, `medium`, `large`, or `xlarge`. Default: `nano-quickstart`
* `START_MIDDLE_MANAGER` -- whether to start the middle manager process. Default `false`, because the middle manager is only needed for ingesting rows. Set to `true` if you plan to ingest more data.
* `ENABLE_JAVASCRIPT` -- whether to enable javascript on the Druid cluster. Metabase requires this, so by default it it `true`. Set it to something besides `true` to disable it.
* `LOG4J_PROPERTIES_FILE` -- Log4j2 config. By default, `/druid/apache-druid-0.20.2/log4j2.properties`, copied when building the Docker image, but you can mount a directory and supply a different file if you want different logging levels.### Push It
```bash
docker push metabase/druid:0.20.2
```