Prerequisites

  • Docker version must be at least 20.10.24 or pass --security-opt seccomp=unconfined to docker run, otherwise, you will get pthread_create failed error.
  • If accessing from China, pull image registry.cn-shanghai.aliyuncs.com/bytebase/bytebase:latest.

Installation

Estimated time: 5 minutes.
docker run --rm --init \
  --name bytebase \
  --publish 8080:8080 --pull always \
  --volume ~/.bytebase/data:/var/opt/bytebase \
  bytebase/bytebase:latest
Once you see the Bytebase logo, you can access the console at http://localhost:8080.
██████╗ ██╗   ██╗████████╗███████╗██████╗  █████╗ ███████╗███████╗
██╔══██╗╚██╗ ██╔╝╚══██╔══╝██╔════╝██╔══██╗██╔══██╗██╔════╝██╔════╝
██████╔╝ ╚████╔╝    ██║   █████╗  ██████╔╝███████║███████╗█████╗
██╔══██╗  ╚██╔╝     ██║   ██╔══╝  ██╔══██╗██╔══██║╚════██║██╔══╝
██████╔╝   ██║      ██║   ███████╗██████╔╝██║  ██║███████║███████╗
╚═════╝    ╚═╝      ╚═╝   ╚══════╝╚═════╝ ╚═╝  ╚═╝╚══════╝╚══════╝

Version 3.9.0 has started on port 8080 🚀

If you need to transfer images to a completely air-gapped environment:
# Save the image to a tar file
docker save bytebase/bytebase:latest > bytebase-latest.tar

# Transfer the tar file to your target environment
# Then load it on the target system
docker load < bytebase-latest.tar

# Tag and push as described above
docker tag bytebase/bytebase:latest your-registry.acme.com/library/bytebase:latest
docker push your-registry.acme.com/library/bytebase:latest
If you need more control over the server configuration, check other Server Startup Options. For production deployments, see our Production Setup Guide.

Troubleshooting

bind: address already in use

If you see bind: address already in use error, it means the port 8080 is already in use on your host. You need to either stop the existing process using the port or configure Bytebase to use a different port via --publish <<YOUR_PORT>>:8080.

Connect database instance on the same host

  • If you run Bytebase inside Docker on Linux, then you need to supply the additional --network host flags in docker run command. This allows Bytebase to connect to database instance running on the same host with localhost.
  • If you run Bytebase inside Docker Desktop on Mac , then you need to use host.docker.internal to connect to database instance running on the same host.

Manifest not found

There may be a few reasons the manifest file is not found:
  • The docker image only supports linux/amd64 and linux/arm64 arch. If it doesn’t match your OS arch, you may supply --platform linux/amd64 as a best effort.
  • Your Docker version is too old and doesn’t support manifest list. Please install the latest Docker version.

Unable to start using Colima

Due to the vm mechanism of Colima, try to use the --mount option when starting colima as shown below:
mkdir ~/volumes
colima start --mount ~/volumes:w
docker run --init \
  --name bytebase \
  --restart always \
  --publish 80:8080 --pull always \
  --volume ~/.bytebase/data:/var/opt/bytebase bytebase/bytebase:latest \
  --data /var/opt/bytebase \
  --external-url http://bytebase.example.com \
  --port 8080