diff --git a/.env b/.env index 801104b..0acfa4d 100644 --- a/.env +++ b/.env @@ -23,17 +23,9 @@ REDIS_PORT= MONGO_PORT= MONGO_INITDB_ROOT_USERNAME=username MONGO_INITDB_ROOT_PASSWORD=password -#NewAPI 服务暴露端口(配置大语言模型,初始用户名为root,密码为12345678) -ONEAPI_PORT=3000 -#MYSQL暴露端口和初始化密码。初次部署可以修改,更新请勿修改 -MYSQL_PORT=3306 -MYSQL_ROOT_PASSWORD=6XhxkP7HKi2jymtG -MYSQL_USER=onepai -MYSQL_USER_PASSWORD=2XYupjhIXz7x #comfy-server后端web服务暴露端口。一般情况下无需修改 SERVER_HTTP_PORT=3001 SERVER_WS_PORT=3002 -CONFIG_WS_MCP_PORT=3012 #watchtower 监听端口,自动更新容器和通过浏览器查看容器日志 WATCHTOWER_PORT=8089 PORTAINER_PORT=8090 @@ -51,8 +43,6 @@ CONFIG_TOKEN_EXPIRE=1800 # token加密密钥,可以修改为任意字符串 CONFIG_JWT_SECRET='this is a very secret secret' -#EasyAI design tools -HTTP_PORT_EASYAI_DESIGN=3008 diff --git a/README.md b/README.md index 1e1e818..1de7743 100644 --- a/README.md +++ b/README.md @@ -2,22 +2,28 @@ start.sh 脚本用于服务器一键安装启动EasyAI应用 ### 首次安装部署步骤,并使用服务器公网IP进行访问 -1. 修改env中环境变量,将下面两个环境变量修改为你的服务器的公网ip,本地局域网方式使用局域网IP +1. 克隆脚本和相关文件到服务器 +```bash +git clone https://git.51easyai.com/wangbo/easyai.git +# 进入easyai目录 +cd easyai +``` + +2. 修改env中环境变量,将下面两个环境变量修改为你的服务器的公网ip,本地局域网方式使用局域网IP ```bash NUXT_PUBLIC_BASE_APIURL=http://<你的服务器公网IP或者局域网地址>:3001 NUXT_PUBLIC_BASE_SOCKETURL=ws://<你的服务器公网IP或者局域网地址>:3002 ``` -2. 开放服务器的3000、3001、3002和3010端口 -3. [首次执行,后续无需重复执行]添加脚本的执行权限,命令: +3. 开放服务器的3000、3001、3002和3010端口 +4. [首次执行,后续无需重复执行]添加脚本的执行权限,命令: ```bash chmod +x start.sh ``` -4. 执行start.sh脚本,即可自动安装依赖和启动EasyAI应用 +5. 执行start.sh脚本,即可自动安装依赖和启动EasyAI应用 ```bash ./start.sh ``` -5. 脚本运行完成无错误,并且提示`EasyAI应用启动成功`表示应用启动成功,打开浏览器输入服务器的公网ip:3010或者局域网IP:3010,即可访问EasyAI应用 - +6. 脚本运行完成无错误,并且提示`EasyAI应用启动成功`表示应用启动成功,打开浏览器输入服务器的公网ip:3010或者局域网IP:3010,即可访问EasyAI应用 ### 启用HTTPS 1. [更改为你的域名]修改easyai-proxy.conf中域名51easyai.com为你的域名 @@ -75,5 +81,16 @@ chmod +x update.sh # - /usr/local/mongo/data:/data/db # 挂载本地数据 - mongo_data:/data/db # 使用docker volume存储数据,提高性能,避免兼容性问题 ........ +``` +## 常见问题 +1. 启动时提示`Error: listen EADDRINUSE: address already in use :::3000` +端口占用,请检查端口3000是否被其他程序占用 +2. invalid interpolation format for services.mongo.ports.[]. You may need to escape any $ with another $ 等关于docker-compose文件格式的报错 +解决方案:docker-compose 版本太低,一般为服务器之前自己使用apt安装低版本的docker-compose,需要卸载重新安装 +```bash +# 卸载docker-compose +apt remove docker-compose +#重新安装 +./start.sh ``` \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index f518571..9d44719 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -67,8 +67,6 @@ services: - CONFIG_COMFYUI_QUENE_REDIS_HOST=172.21.0.4 - CONFIG_COMFYUI_QUENE_REDIS_PORT=6379 - CONFIG_COMFYUI_QUENE_REDIS_PASSWORD= - #One API 路径,自动注册大模型账号 - - CONFIG_ONEAPIURL=http://172.21.0.5:3000 #日志与调试 - LOG_LEVEL=${LOG_LEVEL} #Token过期时间,单位秒 @@ -82,70 +80,6 @@ services: options: max-size: "100m" max-file: "10" - # 使用大语言模型的后端接口 - new-api: - # image: calciumion/new-api:latest # 原版镜像地址 - image: registry.cn-shanghai.aliyuncs.com/easyaigc/new-api:latest #阿里云中转加速 - container_name: new-api - restart: always - command: --log-dir /app/logs - ports: - - "${ONEAPI_PORT}:3000" - networks: - comfyai: - ipv4_address: 172.21.0.5 - volumes: - - newapi_data:/data - - ./new-api-logs:/app/logs - environment: - - SQL_DSN=${MYSQL_USER}:${MYSQL_USER_PASSWORD}@tcp(172.21.0.7:3306)/new-api # 指向mysql服务 - - REDIS_CONN_STRING=redis://redis - - TZ=Asia/Shanghai - # - SESSION_SECRET=random_string # 多机部署时设置,必须修改这个随机字符串!!!!!!! - # - NODE_TYPE=slave # 多机部署的从节点取消注释 - # - SYNC_FREQUENCY=60 # 如需定期同步数据库,取消注释 - # - FRONTEND_BASE_URL=https://your-domain.com # 多机部署带前端URL时取消注释 - - depends_on: - - redis - - new-api-db - healthcheck: - test: [ "CMD-SHELL", "wget -q -O - http://localhost:${ONEAPI_PORT}/api/status | grep -o '\"success\":\\s*true' | awk -F: '{print $$2}'" ] - interval: 30s - timeout: 10s - retries: 3 -# oneapi: -# # 提供oneapi的阿里云镜像下载地址,避免因为网络问题无法拉取镜像的问题 -# # image: justsong/one-api -# image: registry.cn-shanghai.aliyuncs.com/mynewkey/one-api:latest -# container_name: oneapi -# restart: always -# ports: -# - "3011:3000" -# networks: -# comfyai: -# ipv4_address: 172.21.0.12 -# environment: -# - TZ=Asia/Shanghai -# volumes: -# - oneapi_data:/data - new-api-db: - image: registry.cn-shanghai.aliyuncs.com/comfy-ai/mysql-aliyun:latest # one-hub mysql镜像地址 - restart: always - container_name: mysql - volumes: - - newapi_db_mysql_data:/var/lib/mysql # 挂载目录,持久化存储 - ports: - - "${MYSQL_PORT}:3306" - networks: - comfyai: - ipv4_address: 172.21.0.7 - environment: - TZ: Asia/Shanghai # 设置时区 - MYSQL_ROOT_PASSWORD: "${MYSQL_ROOT_PASSWORD}" # 设置 root 用户的密码 - MYSQL_USER: ${MYSQL_USER} # 创建专用用户 - MYSQL_PASSWORD: "${MYSQL_USER_PASSWORD}" # 设置专用用户密码 - MYSQL_DATABASE: new-api # 自动创建数据库 mongo: image: registry.cn-shanghai.aliyuncs.com/comfy-ai/mongo-aliyun:latest # image: registry.cn-shanghai.aliyuncs.com/comfy-ai/mongo-aliyun:4.4 @@ -215,9 +149,6 @@ services: # - "${PORTAINER_HTTPS_PORT}:9443" read_only: true volumes: -# oneapi_data: - newapi_data: - newapi_db_mysql_data: mongo_data: portainer_data: networks: diff --git a/easyai-proxy.conf b/easyai-proxy.conf index d82cf22..930f5fe 100644 --- a/easyai-proxy.conf +++ b/easyai-proxy.conf @@ -10,7 +10,7 @@ server { server_name www.51easyai.com; # 添加 HSTS 策略 - add_header Strict-Transport-Security "max-age=31536000" always; +# add_header Strict-Transport-Security "max-age=31536000" always; # ssl 版本控制 ssl_protocols TLSv1.2 TLSv1.3; # 只启用 TLS 1.2 和 TLS 1.3 @@ -105,28 +105,3 @@ server { } } -# chatapi 大语言模型转发子域名配置 -server { - listen 80; - listen [::]:80; - server_name chatapi.51easyai.com; - - # 用于 certbot 验证的配置 - location /.well-known/acme-challenge/ { - root /var/www/certbot; - try_files $uri =404; - } - - - location / { - client_max_body_size 64m; - proxy_http_version 1.1; - proxy_pass http://127.0.0.1:3000; # 请根据实际情况修改你的端口 - proxy_set_header Host $host; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_cache_bypass $http_upgrade; - proxy_set_header Accept-Encoding gzip; - proxy_read_timeout 300s; # GPT-4 需要较长的超时时间,请自行调整 - } -}