增加root_token查询
This commit is contained in:
11
README.md
11
README.md
@@ -30,10 +30,13 @@ or
|
||||
```
|
||||
wget https://github.com/mirrors2/opencatd-open/raw/main/docker/docker-compose.yml
|
||||
```
|
||||
## reset root token
|
||||
```
|
||||
docker exec -it opencatd-open ./opencatd reset_root
|
||||
```
|
||||
## 支持的命令
|
||||
>获取 root 的 token
|
||||
- `docker exec opencatd-open opencatd root_token`
|
||||
|
||||
>重置 root 的 token
|
||||
- `docker exec opencatd-open opencatd reset_root`
|
||||
|
||||
|
||||
## Q&A
|
||||
关于证书?
|
||||
|
||||
@@ -12,10 +12,10 @@ FROM alpine:latest AS runner
|
||||
# 设置alpine 时间为上海时间
|
||||
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && apk update && apk --no-cache add tzdata && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
|
||||
&& echo "Asia/Shanghai" > /etc/timezone \
|
||||
&& export PATH=$PATH:/app
|
||||
# RUN apk update && apk --no-cache add openssl libgcc libstdc++ binutils
|
||||
WORKDIR /app
|
||||
COPY --from=builder /build/bin/opencatd /app/opencatd
|
||||
ENV GIN_MODE=release
|
||||
ENV PATH=$PATH:/app
|
||||
EXPOSE 80
|
||||
ENTRYPOINT ["/app/opencatd"]
|
||||
39
opencat.go
39
opencat.go
@@ -9,19 +9,44 @@ import (
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/google/uuid"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
func main() {
|
||||
args := os.Args[1:]
|
||||
if len(args) > 0 && args[0] == "reset_root" {
|
||||
log.Println("reset root token...")
|
||||
ntoken := uuid.NewString()
|
||||
if err := store.UpdateUser(uint(1), ntoken); err != nil {
|
||||
log.Fatalln(err)
|
||||
if len(args) > 0 {
|
||||
switch args[0] {
|
||||
case "reset_root":
|
||||
log.Println("reset root token...")
|
||||
if _, err := store.GetUserByID(uint(1)); err != nil {
|
||||
if err == gorm.ErrRecordNotFound {
|
||||
log.Println("请在opencat(或其他APP)客户端完成team初始化")
|
||||
return
|
||||
} else {
|
||||
log.Fatalln(err)
|
||||
return
|
||||
}
|
||||
}
|
||||
ntoken := uuid.NewString()
|
||||
if err := store.UpdateUser(uint(1), ntoken); err != nil {
|
||||
log.Fatalln(err)
|
||||
return
|
||||
}
|
||||
log.Println("new root token:", ntoken)
|
||||
return
|
||||
case "root_token":
|
||||
log.Println("reset root token...")
|
||||
if user, err := store.GetUserByID(uint(1)); err != nil {
|
||||
log.Fatalln(err)
|
||||
return
|
||||
} else {
|
||||
log.Println("root token:", user.Token)
|
||||
return
|
||||
}
|
||||
default:
|
||||
return
|
||||
}
|
||||
log.Println("new root token:", ntoken)
|
||||
return
|
||||
|
||||
}
|
||||
port := os.Getenv("PORT")
|
||||
r := gin.Default()
|
||||
|
||||
Reference in New Issue
Block a user