Docker 安装 R-Bot
R-Bot 是一套双端架构的多云基础设施管理系统,通过 Telegram 机器人驱动本地客户端,快速管理 Oracle Cloud (OCI)、AWS、Azure、SolusVM 等云平台资源。客户端同时内置了完整的 Web SSH 终端 和 Web 云管理面板,在浏览器中即可完成服务器运维和云资源管理。
根据 GitHub 文档和该项目的结构,R-Bot 的官方安装方式主要是通过脚本直接在宿主机运行。不过,由于它提供了针对不同架构(x86, ARM64)的二进制包,完全可以使用 Docker Compose 进行安装。
可以按照以下步骤编写 Docker Compose 配置:
1. 准备工作
在宿主机创建一个目录,例如 rbot,并进入该目录:
mkdir rbot && cd rbot2. 创建 Dockerfile
由于官方没有直接提供 Docker 镜像,我们需要用一个轻量级的镜像(如 Debian 或 Ubuntu)来运行它的二进制文件。
在 rbot 目录下创建 Dockerfile:
vim Dockerfile
FROM debian:stable-slim
RUN apt-get update && apt-get install -y wget curl ca-certificates procps && rm -rf /var/lib/apt/lists/*
WORKDIR /app
# 1. 脚本放在系统目录做“母版”,防止被 Volume 覆盖
RUN wget -O /usr/local/bin/sh_client_bot.sh https://github.com/semicons/java_oci_manage/releases/latest/download/sh_client_bot.sh \
&& chmod +x /usr/local/bin/sh_client_bot.sh
EXPOSE 9527
# 2. 启动逻辑:如果 /app(即宿主机 data)没脚本,就从母版考一个过去,然后原地运行
CMD ["bash", "-c", "cp -n /usr/local/bin/sh_client_bot.sh /app/ && cd /app && bash /app/sh_client_bot.sh start && tail -f /dev/null"]3. 创建 docker-compose.yaml
直接用printf创建yaml文件
printf "services:\n oci-manage:\n build: .\n container_name: oci-manage\n restart: always\n ports:\n - \"9527:9527\"\n volumes:\n - ./data:/app\n environment:\n - TZ=Asia/Shanghai\n" > docker-compose.yaml或者使用vim命令创建 docker-compose.yaml:
services:
oci-manage:
build: .
container_name: oci-manage
restart: always
ports:
- "9527:9527"
volumes:
- ./data:/app
environment:
- TZ=Asia/Shanghai4. 部署与配置
构建镜像并启动容器:
docker compose up -d --build- 编辑配置: 容器首次运行后,会在宿主机的
data 目录下生成client_config 文件。你需要按照文档说明,填入你的 Telegram 凭据、Oracle Cloud API 信息(以及上传你的.pem 密钥文件到data目录)。 重启容器使配置生效:
docker compose restart
[!TIP] 💡 注意
该程序包含 Web 界面(默认https://IP:9527),由于是自签名证书,浏览器可能会报安全警告,点击“高级”并继续访问即可。如果你的 Debian 环境没有公网 IP,记得在
client_config 中设置model=local。
5. 后期升级
# 1. 停掉容器
docker compose down
# 2. 清空宿主机的 data 目录(注意:这一步会删掉你的 .pem 密钥和任务,请提前备份密钥!)
rm -rf data/*
# 3. 重新构建并启动
docker compose up -d --build