mirror of https://github.com/apache/druid.git
ddfc31d7ed
This PR creates symlinks when there are duplicate jars present in the extension. Docker image includes contrib extensions, too, and the size of the image has bloated up quite a lot of late. This change also fixes "ITNestedQueryPushDownTest integration test" |
||
---|---|---|
.. | ||
Dockerfile | ||
Dockerfile.mariadb | ||
Dockerfile.mysql | ||
DockerfileBuildTarAdvanced | ||
README.md | ||
deduplicate_jars.sh | ||
docker-compose.yml | ||
druid.sh | ||
environment | ||
peon.sh |
README.md
Build
From the root of the repo, run following command:
DOCKER_BUILDKIT=1 docker build -t apache/druid:tag -f distribution/docker/Dockerfile .
Building images on Apple M1/M2
To build images on Apple M1/M2, you need to follow the instructions in this section.
- build Druid distribution from the root of the repo
mvn clean package -DskipTests -Pdist
- build target image
DOCKER_BUILDKIT=1 docker build -t apache/druid:tag -f distribution/docker/Dockerfile --build-arg BUILD_FROM_SOURCE=false .
Run
- Edit
distribution/docker/docker-compose.yml
file to change the tag of Druid's images to the tag that's used in the 'Build' phase above. - Edit
environment
file to suite if necessary. - Run:
docker-compose -f distribution/docker/docker-compose.yml up
MySQL Database Connector
This image contains solely the postgres metadata storage connector. If you need the mysql metadata storage connector, you can use Dockerfile.mysql to add it to the base image above.
docker build -t apache/druid:tag-mysql --build-arg DRUID_RELEASE=apache/druid:tag -f distribution/docker/Dockerfile.mysql .
where druid:tag
is the version of Druid image to use as the base.