This commit is contained in:
commit
2a180db6c6
54
.gitea/workflows/build-image.yaml
Normal file
54
.gitea/workflows/build-image.yaml
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
name: BuildImage
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
# tags:
|
||||||
|
# - '*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-image:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
# 使用这个镜像,不然Docker无法打包镜像
|
||||||
|
image: catthehacker/ubuntu:act-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Setup Golang
|
||||||
|
uses: actions/setup-go@v3
|
||||||
|
with:
|
||||||
|
go-version: '>=1.21.0'
|
||||||
|
cache: false
|
||||||
|
|
||||||
|
- name: Checkout Code
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Gen Tags
|
||||||
|
id: gen_tags
|
||||||
|
uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
|
||||||
|
with:
|
||||||
|
images: lxh01/xybotv2
|
||||||
|
tags: |
|
||||||
|
type=ref,event=branch
|
||||||
|
type=schedule,pattern={{date 'YYYYMMDD'}}
|
||||||
|
|
||||||
|
- name: Print Tags
|
||||||
|
run: |
|
||||||
|
echo "${{ steps.gen_tags.outputs.tags }}"
|
||||||
|
echo "----------------- labels -----------------"
|
||||||
|
echo "${{ steps.meta.outputs.labels }}"
|
||||||
|
|
||||||
|
- name: Login to Repository
|
||||||
|
uses: docker/login-action@v2
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.USERNAME }}
|
||||||
|
password: ${{ secrets.PASSWORD }}
|
||||||
|
|
||||||
|
- name: Build image
|
||||||
|
uses: docker/build-push-action@v2
|
||||||
|
with:
|
||||||
|
push: true
|
||||||
|
tags: ${{ steps.gen_tags.outputs.tags }}
|
||||||
|
labels: ${{ steps.gen_tags.outputs.labels }}
|
||||||
|
|
41
Dockerfile
Normal file
41
Dockerfile
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
FROM python:3.11-slim AS core
|
||||||
|
|
||||||
|
RUN pip install --no-cache-dir xywechatpad-binary
|
||||||
|
RUN pip show xywechatpad-binary
|
||||||
|
|
||||||
|
|
||||||
|
FROM debian:bookworm-slim AS runner
|
||||||
|
LABEL org.opencontainers.image.authors="lxh@cxh.cn"
|
||||||
|
|
||||||
|
# 预定义参数
|
||||||
|
ENV TZ="Asia/Shanghai"
|
||||||
|
ENV PORT=9000
|
||||||
|
ENV MODE=release
|
||||||
|
ENV REDIS_HOST="127.0.0.1"
|
||||||
|
ENV REDIS_PORT=6379
|
||||||
|
ENV REDIS_PASSWORD=""
|
||||||
|
ENV REDIS_DB=0
|
||||||
|
|
||||||
|
# 设置时区
|
||||||
|
#RUN apk add --no-cache tzdata && \
|
||||||
|
# cp /usr/share/zoneinfo/${TZ} /etc/localtime && \
|
||||||
|
# echo "${TZ}" > /etc/timezone
|
||||||
|
|
||||||
|
# 设置工作目录
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# 复制文件
|
||||||
|
COPY . .
|
||||||
|
COPY --from=core /usr/local/lib/python3.11/site-packages/xywechatpad_binary/binaries/linux_x64 ./WechatAPI/core/
|
||||||
|
#RUN ls -lah ./WechatAPI/core
|
||||||
|
|
||||||
|
# 开始运行
|
||||||
|
#CMD ["/app/WechatAPI/core/XYWechatPad-linux-x86", "--port", "${PORT}", "--mode", "${MODE}", "--redis-host", "${REDIS_HOST}", " --redis-port", "${REDIS_PORT}", "--redis-password", "${REDIS_PASSWORD}", "--redis-db", "${REDIS_DB}"]
|
||||||
|
CMD /app/WechatAPI/core/XYWechatPad \
|
||||||
|
--port $PORT \
|
||||||
|
--mode $MODE \
|
||||||
|
--redis-host $REDIS_HOST \
|
||||||
|
--redis-port $REDIS_PORT \
|
||||||
|
--redis-password $REDIS_PASSWORD \
|
||||||
|
--redis-db $REDIS_DB
|
||||||
|
|
0
WechatAPI/core/placeholder
Normal file
0
WechatAPI/core/placeholder
Normal file
48
main_config.toml
Normal file
48
main_config.toml
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
[WechatAPIServer]
|
||||||
|
port = 9000 # WechatAPI服务器端口,默认9000,如有冲突可修改
|
||||||
|
mode = "release" # 运行模式:release(生产环境),debug(调试模式)
|
||||||
|
redis-host = "127.0.0.1" # Redis服务器地址,本地使用127.0.0.1
|
||||||
|
redis-port = 6379 # Redis端口,默认6379
|
||||||
|
redis-password = "" # Redis密码,如果有设置密码则填写
|
||||||
|
redis-db = 0 # Redis数据库编号,默认0
|
||||||
|
|
||||||
|
# XYBot 核心设置
|
||||||
|
[XYBot]
|
||||||
|
version = "v1.0.0" # 版本号,请勿修改
|
||||||
|
ignore-protection = false # 是否忽略风控保护机制,建议保持false
|
||||||
|
database-url = "sqlite:///xybot.db" # SQLite数据库地址,一般无需修改
|
||||||
|
|
||||||
|
# 管理员设置
|
||||||
|
admins = ["admin-wxid", "admin-wxid"] # 管理员的wxid列表,可从消息日志中获取
|
||||||
|
disabled-plugins = ["ExamplePlugin"] # 禁用的插件列表,不需要的插件名称填在这里
|
||||||
|
timezone = "Asia/Shanghai" # 时区设置,中国用户使用 Asia/Shanghai
|
||||||
|
|
||||||
|
# 实验性功能,如果main_config.toml配置改动,或者plugins文件夹有改动,自动重启。可以在开发时使用,不建议在生产环境使用。
|
||||||
|
auto-restart = false # 仅建议在开发时启用,生产环境保持false
|
||||||
|
|
||||||
|
# 消息过滤设置
|
||||||
|
ignore-mode = "None" # 消息处理模式:
|
||||||
|
# "None" - 处理所有消息
|
||||||
|
# "Whitelist" - 仅处理白名单消息
|
||||||
|
# "Blacklist" - 屏蔽黑名单消息
|
||||||
|
|
||||||
|
whitelist = [# 白名单列表
|
||||||
|
"wxid_1", # 个人用户微信ID
|
||||||
|
"wxid_2",
|
||||||
|
"chatroom@111", # 群聊ID
|
||||||
|
"chatroom@222"
|
||||||
|
]
|
||||||
|
|
||||||
|
blacklist = [# 黑名单列表
|
||||||
|
"wxid_3", # 个人用户微信ID
|
||||||
|
"wxid_4",
|
||||||
|
"chatroom@333", # 群聊ID
|
||||||
|
"chatroom@444"
|
||||||
|
]
|
||||||
|
|
||||||
|
# OpenAI格式API设置
|
||||||
|
[OpenAI]
|
||||||
|
api-key = "sk-xxxx" # OpenAI格式API密钥,必须填写有效的API Key
|
||||||
|
base-url = "https://api.openai.com/v1" # API接口地址
|
||||||
|
# 使用OpanAI官方API填写 https://api.openai.com/v1
|
||||||
|
# 使用其他API或者代理API需要修改为对应地址
|
0
utils/xybot.py
Normal file
0
utils/xybot.py
Normal file
Loading…
x
Reference in New Issue
Block a user