跳转至

开始使用

我们提供了开箱即用的部署方式,为了简化安装,我们选择使用 DockerDocker Compose,以及基于 Bash 的安装和升级脚本。

我们的建议是从我们官网获取最新版本的安装包,然后在安装目录中运行 ./install.sh。这个脚本将处理您开始所需的所有事项,包括基本配置,并会提示您运行 ./start.sh 来启动 Beatsight。Beatsight 默认绑定到 8999 端口。安装完成后,您应该能够通过 http://127.0.0.1:8999 访问登录页面。

系统资源

Beatsight 需要安装在 Linux 系统上,可以是 Ubuntu/Debian 或者 CentOS,选择较新版本即可。

推荐的系统资源如下:

  • 2 个 CPU 核心
  • 4 GB RAM
  • 20 GB 可用磁盘空间

我们要求至少使用 Docker 19.03.6 和 Compose 2.13.0。

$ docker version
Client: Docker Engine - Community
 Version:           27.3.1
 ...

$ docker compose version
Docker Compose version v2.29.7
如何安装新版 Docker compose?

首先,运行如下命令:

docker compose version

如果有类似于以下的输出结果:

Docker Compose version v2.29.7

说明您所安装的 Docker 已经自带了 compose,不用再额外安装 docker compose。否则,您需要安装 compose 官方发布页面上可用的最新版本。截至本文撰写时,当前的稳定版本是 2.29.7。

以下将下载 2.29.7 版本,并将可执行文件保存到 /usr/local/bin/docker-compose

sudo curl -L "https://github.com/docker/compose/releases/download/2.29.7/docker-compose-linux-x86_64" -o /usr/local/bin/docker-compose

接下来,设置正确的权限,以便 docker-compose 命令可执行:

sudo chmod +x /usr/local/bin/docker-compose

要验证安装是否成功,您可以运行:

docker-compose --version

您将看到类似于以下的输出:

Output
docker-compose version 2.29.7, build 5becea4c
如果我的系统资源不到2核4G,怎么办?

您可以更改资源参数,具体请见个性化配置

如果我的8999端口被占用了,怎么办?

您可以更改端口配置,具体请见个性化配置

安装脚本

假定您的安装目录为 /opt/beatsight,从官网下载最新版本的安装脚本(例如,v1.3.0-ce):

cd /opt/beatsight
wget https://beatsight.com/downloads/beatsight-docker-1.3.0-ce.zip
unzip beatsight-docker-1.3.0-ce.zip

Tip

如果 unzip 命令没找到,请运行 sudo apt install unzip 或者 sudo yum install unzip

解压后的安装目录如下:

.
|-- beatsight-docker-1.3.0-ce
|   |-- README.md
|   |-- backup.sh
|   |-- backups
|   |-- dc
|   |-- docker-compose.yaml
|   |-- install
|   |-- install.sh
|   |-- logs
|   |-- runtime
|   |-- start.sh
|   |-- stop.sh
|   `-- upgrades
`-- beatsight-docker-1.3.0-ce.zip

其中,dc 脚本是您确保能够正确调用 Docker Compose,无论是使用 docker compose 还是 docker-compose。例如:

./dc version

这将调用正确的 Docker Compose 命令输出版本信息,确保不论使用哪个命令格式,您都能顺利执行 Docker Compose 相关的操作。

开始安装

cd /opt/beatsight/beatsight-docker-1.3.0-ce
./install.sh

该脚本会检查需要的条件是否满足,然后从镜像仓库拉取系统镜像,最后生成系统运行需要的配置文件。

安装完成后,您将看到类似以下的输出:

-----------------------------------------------------------------

You're all done! Run the following command to get Beatsight running:

  ./start.sh

-----------------------------------------------------------------

配置文件

此时的安装目录结构如下:

cd /opt/beatsight
.
|-- beatsight-docker-1.3.0-ce
|   |-- README.md
|   |-- backup.sh
|   |-- backups
|   |-- beatsight_install_log-2024-10-26_04-10-18.txt
|   |-- docker-compose.yaml
|   |-- install
|   |-- install.sh
|   |-- logs
|   |-- runtime
|   |-- start.sh
|   `-- stop.sh
|-- logs
|   |-- beatsight
|   |-- nginx
|   `-- supervisor
`-- runtime
    |-- beatsight.nginx.conf
    |-- beatsight_settings.py
    `-- gunicorn.conf.py

其中,runtime目录包含了系统运行需要的配置文件,打开 beatsight_settings.py,写入本机的地址(例如,10.8.1.1):

vi runtime/beatsight_settings.py
ALLOWED_HOSTS = [
    '127.0.0.1',
    'demo.beatsight.com',
    # Add other allowd host as needed
    '10.8.1.1', # <------- 增加这行
]
CSRF_TRUSTED_ORIGINS = [
    'https://demo.beatsight.com',
    # Add other trusted origins as needed
    'http://10.8.1.1', # <------- 增加这行
]

启动服务

此时,您可以启动服务:

cd beatsight-docker-1.3.0-ce
./start.sh

启动完成后,您将看到如下输出:

[+] Running 6/6
  Container beatsight-mq        Started
  Container beatsight-redis     Healthy
  Container beatsight-postgres  Running
  Container beatsight-celery    Started
  Container beatsight-web       Started
  Container beatsight-beat      Started

要验证系统组件是否正常运行,您可以运行:

./dc ps

您将看到类似于以下的输出:

NAME                 IMAGE                           COMMAND                  SERVICE    CREATED       STATUS                 PORTS
beatsight-beat       beatsight/beatsight:v1.3.0-ce   "/home/beatsight/bui…"   beat       5 hours ago   Up 5 hours             22/tcp, 8000/tcp
beatsight-celery     beatsight/beatsight:v1.3.0-ce   "/home/beatsight/bui…"   celery     5 hours ago   Up 5 hours             22/tcp, 8000/tcp
beatsight-mq         rabbitmq:3-management-alpine    "docker-entrypoint.s…"   rabbitmq   5 hours ago   Up 5 hours (healthy)   4369/tcp, 5671-5672/tcp, 15671-15672/tcp, 15691-15692/tcp, 25672/tcp
beatsight-postgres   postgres:14-bullseye            "docker-entrypoint.s…"   postgres   5 hours ago   Up 5 hours (healthy)   5432/tcp
beatsight-redis      redis:6.2.14-alpine             "docker-entrypoint.s…"   redis      5 hours ago   Up 5 hours (healthy)   6379/tcp
beatsight-web        beatsight/beatsight:v1.3.0-ce   "/bin/sh -c 'exec ${"   web        5 hours ago   Up 5 hours (healthy)   22/tcp, 8000/tcp, 0.0.0.0:8999->80/tcp, [::]:8999->80/tcp

创建超级管理员

第一次进入系统前需要先创建超级管理员,请运行如下命令:

./dc exec web python3 manage.py createsuperuser

创建完成后,打开浏览器访问 http://127.0.0.1:8999 或者您服务器的地址, 输入用户名和密码即可登录系统。

Login page

停止服务

您可以通过以下命令来停止服务:

./stop.sh

该命令会停止所有系统组件。如果您需要彻底停止服务,请运行:

./dc down

接下来,您需要将系统的 ssh 公钥加入到您的 Gitlab/Github 账号里,这样系统才能连接到代码仓库。具体请见SSH 公钥