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