开始使用¶
我们提供了开箱即用的部署方式,为了简化安装,我们选择使用 Docker 和 Docker 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,不用再额外安装 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 命令可执行:
要验证安装是否成功,您可以运行:
您将看到类似于以下的输出:
如果我的系统资源不到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
。例如:
这将调用正确的 Docker Compose 命令输出版本信息,确保不论使用哪个命令格式,您都能顺利执行 Docker Compose 相关的操作。
开始安装¶
该脚本会检查需要的条件是否满足,然后从镜像仓库拉取系统镜像,最后生成系统运行需要的配置文件。
安装完成后,您将看到类似以下的输出:
-----------------------------------------------------------------
You're all done! Run the following command to get Beatsight running:
./start.sh
-----------------------------------------------------------------
配置文件¶
此时的安装目录结构如下:
.
|-- 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):
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', # <------- 增加这行
]
启动服务¶
此时,您可以启动服务:
启动完成后,您将看到如下输出:
[+] 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
要验证系统组件是否正常运行,您可以运行:
您将看到类似于以下的输出:
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
创建超级管理员¶
第一次进入系统前需要先创建超级管理员,请运行如下命令:
创建完成后,打开浏览器访问 http://127.0.0.1:8999 或者您服务器的地址, 输入用户名和密码即可登录系统。
停止服务¶
您可以通过以下命令来停止服务:
该命令会停止所有系统组件。如果您需要彻底停止服务,请运行:
接下来,您需要将系统的 ssh 公钥加入到您的 Gitlab/Github 账号里,这样系统才能连接到代码仓库。具体请见SSH 公钥。