BitComet Installation Guide for Linux

BitComet Linux Edition is packaged using AppImage format and Docker image.

AppImage package

The AppImage package can run the application without needing superuser permissions to install it. The detailed info about AppImage format can be found at https://www.appimage.org/

Linux DistroSupported Version
Ubuntu18.04
Debian12.1
Fedora38
openSUSELeap 15.5 / Tumbleweed
CentOSStream 9
OthersGLIBCXX_3.4.22 or higher

The only requirement to run BitComet in your Linux distro is the GLIBCXX version in libstdc++.so.
BitComet cannot run if the GLIBCXX version in your Linux distro is lower than GLIBCXX_3.4.22

The version of installed GLIBCXX in your Linux distro can be find by following commands:

# find libstdc++.so.6 file
find /usr/ -name libstdc++.so.6

# get GLIBCXX version, typically using
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX

# or using
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

The AppImage file of BitComet Linux edition can be downloaded from the official website.

Using the GUI

  1. Open your file manager and browse to the location of the AppImage
  2. Right-click on the AppImage and click the ‘Properties’ entry
  3. Switch to the Permissions tab and click the ‘Allow executing file as program’ checkbox
  4. Close the dialog
  5. Double-click on the AppImage file to run

Using the Terminal

  1. Open a terminal
  2. Change to the directory containing the AppImage, for example:
cd <my directory>
  1. Make the AppImage executable:
chmod +x BitComet.AppImage
  1. Run the AppImage:
./BitComet.AppImage

If your Linux distro doesn't contain some necessary libraries that BitComet depends on, please try to install them manually.

  1. Open a terminal
  2. Change to the directory containing the AppImage, for example:
cd <my directory>
  1. Try to run the AppImage again:
./BitComet.AppImage
  1. Install the missing libraries based on the error message:

For Ubuntu / Debian distros

Librarycommands to check installed version and install missing library
libfuse2apt list | grep libfuse
sudo apt install libfuse2
libwebkit2gtk-4.0apt list | grep libwebkit2gtk
sudo apt install libwebkit2gtk-4.0-37

Note: For Ubuntu 24.04 and above distros, the apt sources for 22.04 are required.

sudo nano /etc/apt/sources.list.d/ubuntu.sources
# add "jammy" to the end of line "Suites: xxx xxx xxx"
# add "jammy-security" to the end of line "Suites: xxx-security"
# save and quit
sudo apt update
sudo apt install libwebkit2gtk-4.0-37
# revert apt sources if necessary

For Fedora / RedHat / CentOS distros

Librarycommands to check installed version and install missing library
libfuse2yum list fuse*
sudo yum --enablerepo=epel install fuse-sshfs
sudo usermod -a -G fuse $(whoami)
libwebkit2gtk-4.0yum list webkit2gtk*
sudo yum install webkit2gtk-4.0.x86_64

For openSUSE distros

Librarycommands to check installed version and install missing library
libfuse2zypper search -i libfuse
sudo zypper install fuse libfuse2
libwebkit2gtk-4.0zypper search -i webkit2gtk
sudo zypper install webkit2gtk-4_0-37

More info about errors related to something called “FUSE” can be found at this page

Deb package

the deb package of BitComet Linux edition can be downloaded from official website.

  1. Open a terminal
  2. Change to the directory containing the deb file, for example:
cd <my directory>
  1. Install the deb package:
sudo apt install ./BitComet-2.12.0-x86_64.deb

Launch the main program in GUI mode:

BitComet

Launch the main program in console mode with Web UI:

bitcometd

Note: The main program in both modes can only run one instance at a time.

Docker image (GUI mode)

List of BitComet Docker images in GUI mode: https://hub.docker.com/r/wxhere/bitcomet/tags

Deploy Method 1: using docker-compose

services:
    sandbox:
        container_name: bitcomet
        image: wxhere/bitcomet:latest
        ulimits:
          nofile:
            soft: 65536
            hard: 65536
        volumes:
            # Store BitComet configuration files on the host.
            - /docker/appdata/BitComet:/home/sandbox/.config/BitComet:rw
            # Store downloaded files on the host.
            - ~/Downloads:/home/sandbox/Downloads:rw
        ports:
            # VNC GUI port
            - 5900:5900
            # Web GUI port
            - 6080:80
            # BitTorrent ports
            - 6082:6082
            - 6082:6082/udp
        environment:
            - VNC_PASSWORD=123456
            - HTTP_PASSWORD=123456
            - USER=sandbox
            - PASSWORD=123456

Note: Please change the username, password, and port mapping according to your own needs.

docker-compose -f docker-compose.yml up
http://127.0.0.1:6080
username: sandbox
password: 123456

or connect to the VNC desktop with your VNC client:

port: 5900
username: sandbox
password: 123456

Deploy Method 2: using Docker CLI

docker pull wxhere/bitcomet:latest
docker run -d \
  --name=bitcomet \
  --ulimit nofile=65536:65536 \
  -e VNC_PASSWORD=123456 \
  -e HTTP_PASSWORD=123456 \
  -e USER=sandbox \
  -e PASSWORD=123456 \
  -p 5900:5900 \
  -p 6080:80 \
  -p 6082:6082 \
  -p 6082:6082/udp \
  -v /docker/appdata/BitComet:/home/sandbox/.config/BitComet:rw \
  -v ~/Downloads:/home/sandbox/Downloads:rw \
  --restart unless-stopped \
  wxhere/bitcomet:latest

Note: Please change the username, password, and port mapping according to your own needs.

http://127.0.0.1:6080
username: sandbox
password: 123456

or connect to the VNC desktop with your VNC client:

port: 5900
username: sandbox
password: 123456

Docker image (Web UI mode)

List of BitComet Docker images in Web UI mode: https://hub.docker.com/r/wxhere/bitcomet-webui/tags

Deploy Method 1: using docker-compose

services:
    sandbox:
        container_name: bitcomet-webui
        image: wxhere/bitcomet-webui:latest
        ulimits:
          nofile:
            soft: 65536
            hard: 65536
        volumes:
            # Store BitComet configuration files on the host.
            - /docker/appdata/BitComet:/root/.config/BitComet:rw
            # Store downloaded files on the host.
            - ~/Downloads:/root/Downloads:rw
        ports:
            # BitComet WebUI port
            - 6080:80
            # BitTorrent ports
            - 6082:6082
            - 6082:6082/udp
        environment:
            - BITCOMET_WEBUI_PORT=8080
            - BITCOMET_BT_PORT=6082
            - WEBUI_USERNAME=test
            - WEBUI_PASSWORD=test

Note: Please change the username, password, and port mapping according to your own needs.

docker-compose -f docker-compose.yml up
http://127.0.0.1:6080
username: test
password: test

Deploy Method 2: using Docker CLI

docker pull wxhere/bitcomet-webui:latest
docker run -d \
  --name=bitcomet-webui \
  --ulimit nofile=65536:65536 \
  -e BITCOMET_WEBUI_PORT=8080 \
  -e BITCOMET_BT_PORT=6082 \
  -e WEBUI_USERNAME=test \
  -e WEBUI_PASSWORD=test \
  -p 6080:80 \
  -p 6082:6082 \
  -p 6082:6082/udp \
  -v /docker/appdata/BitComet:/root/.config/BitComet:rw \
  -v ~/Downloads:/root/Downloads:rw \
  --restart unless-stopped \
  wxhere/bitcomet-webui:latest

Note: Please change the username, password, and port mapping according to your own needs.

http://127.0.0.1:6080
username: test
password: test