Skip to content

Team Edition deployment with Docker Compose

dbeaver-devops edited this page Nov 7, 2024 · 1 revision

Table of contents

Overview

Team Edition can be easily set up using Docker Compose. This guide covers installation steps for macOS, Ubuntu, and Windows.

For advanced configurations such as using an external database, managing encryption keys, scaling services, updating versions, or using custom image sources, refer to the Advanced settings guide.

Installation on Ubuntu

Required tools setup

  • Ensure Docker is installed by following the Docker installation guide for Linux.
  • Install Docker Compose if it’s not already installed:
    sudo apt update
    sudo apt install docker-compose
  • Install Git if it’s not already installed:
    sudo apt install git
  • Verify the installation:
    docker --version
    docker-compose --version
    git --version

Configuring and starting Team Edition

  1. Clone the Git repository to your machine:

    git clone https://github.com/dbeaver/team-edition-deploy
  2. Navigate to the cloned repository:

    cd team-edition-deploy/compose/cbte
  3. Set up the .env file as described here.

  4. Start the cluster:

    docker-compose up -d
  5. Access Team Edition at https://<server-ip>.

Tip: Replace <server-ip> with your server’s actual IP address. You can configure the domain during the initial setup. For more details, see Domain Manager.

Installation on macOS

Required tools setup

  • Install Docker Desktop for macOS from Docker website. Make sure Docker Desktop is running before proceeding.
  • Install Docker Compose if it’s not bundled with Docker Desktop:
    brew install docker-compose
  • Install Git if it’s not already installed:
    brew install git
  • Verify the installation:
    docker --version
    docker-compose --version
    git --version

Configuring and starting Team Edition

  1. Clone the Git repository to your machine:

    git clone https://github.com/dbeaver/team-edition-deploy
  2. Open the Terminal and navigate to the repository:

    cd ~/team-edition-deploy/compose/cbte
  3. Set up the .env file as described here.

  4. Start the cluster:

    docker-compose up -d
  5. Access Team Edition at https://<server-ip>.

Tip: Replace <server-ip> with your server’s actual IP address. You can configure the domain during the initial setup. For more details, see Domain Manager.

Installation on Windows

Required tools setup

  • Install Docker Desktop for Windows from Docker website.
  • Install Git if it’s not already installed:
    winget install --id Git.Git -e --source winget
  • Verify the installations:
    docker --version
    docker-compose --version
    git --version

Configuring and starting Team Edition

  1. Clone the Git repository to your machine:

    git clone https://github.com/dbeaver/team-edition-deploy
  2. Open PowerShell and navigate to the cloned repository:

    cd C:\path\to\team-edition-deploy\compose\cbte
  3. Set up the .env file as described here.

  4. Start the cluster:

    docker-compose up -d
  5. Access Team Edition at https://<server-ip>.

Tip: Replace <server-ip> with your server’s actual IP address. You can configure the domain during the initial setup. For more details, see Domain Manager.

Environment file configuration

The .env file contains configuration settings necessary for the Team Edition cluster. Follow these steps to set it up:

  1. Navigate to the directory containing the configuration file:

    cd team-edition-deploy/compose/cbte
  2. Copy the example environment file and rename it:

    cp .env.example .env
  3. (Optional) Open the .env file in a text editor and update the configurations based on your requirements. For details on each environment variable, refer to the Environment variables reference.

    Important: This step is optional, you can start Team Edition cluster without any changes in the .env file. Ensure you save your changes to the .env file before proceeding.

  4. Once the .env file is configured, continue with the installation for Ubuntu, macOS, or Windows based on your operating system.

Environment variables reference

The .env file contains various settings such as image sources, domain names, scaling options, and database connections. For details on configuring this file, refer to the example below.

# CloudBeaver TE server version. Based on DockerHub images tag
CLOUDBEAVER_VERSION_TAG=24.2.0
IMAGE_SOURCE=dbeaver

# Domain name of cluster endpoint. eg. dbeaver-te.example.com 
COMPOSE_PROJECT_NAME=dbeaver

# Count of horizontal scaling (default is 1 for each service)
REPLICA_COUNT_TE=1
REPLICA_COUNT_TM=1
REPLICA_COUNT_QM=1
REPLICA_COUNT_RM=1

# Backend DB connection settings. If you prefer to use your own database, 
# set USE_EXTERNAL_DB to true and configure CLOUDBEAVER_DB_URL accordingly.
# Supported database engines:
# - for PostgreSQL, use 'postgres-jdbc'
# - for MySQL, use 'mysql8'
# - for Oracle, use 'oracle_thin'
USE_EXTERNAL_DB=false
CLOUDBEAVER_DB_DRIVER=postgres-jdbc
CLOUDBEAVER_DB_URL=jdbc:postgresql://postgres:5432/cloudbeaver
CLOUDBEAVER_DB_USER=postgres
CLOUDBEAVER_DB_PASSWORD=StR0NgP2sSw0rD
Variable Description
CLOUDBEAVER_VERSION_TAG Specifies the version tag of the Team Edition server. This tag should match the Team Edition DockerHub image versions, for instance 24.2.0. For more details, see Docker tags.
IMAGE_SOURCE The Docker image source for pulling images. Only change the default value if you're certain it's necessary.
COMPOSE_PROJECT_NAME Defines the name used for Docker Compose to group the services. It helps in managing containers as a group.
REPLICA_COUNT_TE, REPLICA_COUNT_TM, REPLICA_COUNT_QM, REPLICA_COUNT_RM Number of instances (replicas) for each service within the cluster. For more information on Docker service scaling and replicas, see the Docker Service Scale Documentation. Adjust based on load and scaling needs:
- REPLICA_COUNT_TE: Web Team Edition app instances.
- REPLICA_COUNT_TM: Task Manager instances.
- REPLICA_COUNT_QM: Query Manager instances.
- REPLICA_COUNT_RM: Resource Manager instances.
USE_EXTERNAL_DB Determines if an external database is used. Set to true to connect to your own database instead of using the internal PostgreSQL. See Server database for details.
CLOUDBEAVER_DB_DRIVER Specifies the JDBC driver for the external database: postgres-jdbc for PostgreSQL (default), mysql8 for MySQL, oracle_thin for Oracle. See details on using external DB.
CLOUDBEAVER_DB_URL The JDBC URL for connecting to your database. This should match the chosen database type and driver.
CLOUDBEAVER_DB_USER Credentials for accessing the external database (username).
CLOUDBEAVER_DB_PASSWORD Credentials for accessing the external database (password). Ensure these are strong and secure.

Managing Team Edition with the server manager utility

DBeaver Team Edition includes a manager utility for starting, stopping, updating, configuring, and backing up the server. However, this manager is not installed by default in the Compose deployment and requires manual installation.

To install:

  1. Navigate to the team-edition-deploy/manager directory.

  2. Run the installation script for your operating system:

    • macOS/Linux: Run the following command in your terminal:
      ./install-manager.sh
    • Windows: Run the script in a compatible shell environment (e.g., Git Bash or WSL):
      ./install-manager.sh

Tip: For comprehensive steps on initial setup, server management tasks like starting, stopping, updating, configuring, and backing up, see the Managing DBeaver Team Edition server guide.

CloudBeaver Documentation

User Guide

Installation

Configuration

CloudBeaver AWS

CloudBeaver Enterprise Edition

Team Edition

Deployment

Clone this wiki locally