GitHub user lhotari edited a comment on the discussion: Installing a custom sink connector
Another solution would be to build a custom docker image with required connectors in the image 1. Save this to a directory as `Dockerfile` ```Dockerfile # example usage: docker buildx build --platform linux/amd64 --build-arg PULSAR_IMAGE=apachepulsar/pulsar:4.0.3 -t myorg/pulsar:4.0.3-custom . ARG PULSAR_IMAGE=apachepulsar/pulsar:latest FROM ${PULSAR_IMAGE} AS pulsar COPY /connectors /pulsar/connectors ``` 2. Create `connectors` and download the connectors there. ``` mkdir connectors cd connectors curl -LO https://github.com/streamnative/pulsar-io-lakehouse/releases/download/v4.0.3.1/pulsar-io-lakehouse-4.0.3.1.nar ``` 3. Build and push the image ``` docker buildx build --push --platform linux/amd64 --build-arg PULSAR_IMAGE=apachepulsar/pulsar:4.0.3 -t myorg/pulsar:4.0.3-custom . ``` (remove `--push` if you just want to test locally) If you need arm64 support, add `--platform linux/amd64,linux/arm64`. To avoid issues, pass `--push` to the command line when building multi-platform images since otherwise you might not get a multi-platform image in your repository. example of building and pushing multi-platform image: ``` docker buildx build --push --platform linux/amd64,linux/arm64 --build-arg PULSAR_IMAGE=apachepulsar/pulsar:4.0.3 -t myorg/pulsar:4.0.3-custom . ``` And finally use this image in Apache Pulsar Helm chart as the default image ```yaml defaultPulsarImageRepository: myorg/pulsar defaultPulsarImageTag: 4.0.3-custom ``` It also replaces `apachepulsar/pulsar-all` with much smaller `apachepulsar/pulsar` image. If you need all connectors, you can build a custom image based on `apachepulsar/pulsar-all`. GitHub link: https://github.com/apache/pulsar/discussions/24075#discussioncomment-12487275 ---- This is an automatically sent email for commits@pulsar.apache.org. To unsubscribe, please send an email to: commits-unsubscr...@pulsar.apache.org