Installation On Docker
Images on Docker Hub
The BanyanDB images are hosted on Docker Hub. You can pull the images from the following links: Apache SkyWalking BanyanDB
There are two types of images:
apache/skywalking-banyandb:<version>- The specific version of the BanyanDB.apache/skywalking-banyandb:<version>-slim- The slim version of the BanyanDB. It does not contain the Web UI.
We pushed linux/amd64 and linux/arm64 for each type of image. You can pull the image for the specific architecture.
Images on GitHub Container Registry
The BanyanDB images are hosted on GitHub Container Registry for development or testing. You can pull the images from the following links: ghcr.io/apache/skywalking-banyandb
There are three types of images:
ghcr.io/apache/skywalking-banyandb:<github-sha>- The specific version of the BanyanDB. We pushedlinux/amd64,linux/arm64andwindows/amd64for each type of image.ghcr.io/apache/skywalking-banyandb:<github-sha>-slim- The slim version of the BanyanDB. It does not contain the Web UI. We pushedlinux/amd64,linux/arm64andwindows/amd64for each type of image.ghcr.io/apache/skywalking-banyandb:<github-sha>-testing- The testing version of the BanyanDB. It contains the Web UI and thebydbctl. We pushedlinux/amd64andlinux/arm64for each type of image.
Start a container in standalone mode
The following commands pull the docker image and run the BanyanDB on Docker. Replace latest with the version of the BanyanDB you want to run.
- pull the image
docker pull apache/skywalking-banyandb:latest
- run the container
docker run -d \
-p 17912:17912 \
-p 17913:17913 \
--name banyandb \
apache/skywalking-banyandb:latest \
standalone
The BanyanDB server would be listening on the 0.0.0.0:17912 to access gRPC requests. if no errors occurred.
At the same time, the BanyanDB server would be listening on the 0.0.0.0:17913 to access HTTP requests. if no errors occurred. The HTTP server is used for CLI and Web UI.
The Web UI is hosted at http://localhost:17913/.
Build and Push the Custom Docker image
The BanyanDB Docker image can be built from the source code. You can build the Docker image by running the following commands:
make generate
make release
HUB=<private_hub> IMG_NAME=<private_name> TAG=<private_tag> make docker.build
The make release command builds binaries and generates the necessary files for building the Docker image. The make docker.build command builds the Docker image with the architecture aligned with the host machine.
HUB is the Docker Hub username or the Docker Hub organization name. IMG_NAME is the Docker image name. TAG is the Docker image tag.
Note: You can’t build other OS or architecture images not identical to the host machine. That’s because the docker build command fails to load the image after the build process.
The make docker.push command pushes the Docker image to the Docker Hub. You need to log in to the Docker Hub before running this command.
docker login
make generate
make release
make docker.push
If you want to push other OS or architecture images, you can run the following commands:
docker login
make generate
TARGET_OS=linux PLATFORMS=linux/amd64,linux/arm64 make release
PLATFORMS=linux/amd64,linux/arm64 make docker.push
The TARGET_OS environment variable specifies the target OS. The PLATFORMS environment variable specifies the target architectures. The PLATFORMS environment variable is a comma-separated list of the target architectures.
If you want to build and publish slim images, you can run the following commands:
docker login
make generate
make release
BINARYTYPE=slim make docker.build
BINARYTYPE=slim make docker.push