当前位置: 首页 > news >正文

企业为什么需要搭建一个网站陕西网络营销优化公司

企业为什么需要搭建一个网站,陕西网络营销优化公司,资金盘网站开发多少钱,番禺绿叶居最近买了ChatGPT PLUS服务,想通过web服务将它共享给其他人使用,搜了一下目前GitHub上比较热门的服务有 ChatGPT-Next-Webchatgpt-web-share 其中chatgpt-web-share支持API和PLUS账号分享两种方式,且架构为PythonJSDocker,相对比…

最近买了ChatGPT PLUS服务,想通过web服务将它共享给其他人使用,搜了一下目前GitHub上比较热门的服务有

  • ChatGPT-Next-Web
  • chatgpt-web-share

其中chatgpt-web-share支持API和PLUS账号分享两种方式,且架构为Python+JS+Docker,相对比较熟悉一些。而ChatGPT-Next-Web使用纯JS开发,且使用方式更为“傻瓜”,导致灵活性不足。所以我选择chatgpt-web-share。
在这里插入图片描述

准备

运行环境

  • Windows11
    • WSL2
      • Docker
    • 小猫咪
    • 无线网卡DHCP(互联网)
    • 有线网卡10.8.15.50(公司内网)

版本

我这里使用chatgpt-web-share的最新版本0.4.0-alpha4.4

配置文件

最终的目录结构如下,需要先创建docker-compose.yml、data目录、config目录、config目录下的config.yaml、credentials.yaml,绿框中的是自动生成的目录及文件。
在这里插入图片描述

# docker-compose.yml
services:chatgpt-web-share:image: ghcr.io/moeakwak/chatgpt-web-share:0.4.0-alpha4.4container_name: cwsrestart: alwaysports:- 8092:80  #端口可调整volumes:- ./data:/app/backend/dataenvironment:- TZ=Asia/Shanghai- CWS_CONFIG_DIR=/app/backend/data/config- CHATGPT_BASE_URL=http://go-chatgpt-api:8080/chatgpt/depends_on:- mongo- go-chatgpt-apimongo:image: mongo:6.0restart: alwaysvolumes:- ./mongo_data:/data/dbenvironment:MONGO_INITDB_DATABASE: cwsMONGO_INITDB_ROOT_USERNAME: cwsMONGO_INITDB_ROOT_PASSWORD: passwordgo-chatgpt-api:container_name: go-chatgpt-apiimage: linweiyuan/go-chatgpt-api:latestenvironment:- GIN_MODE=release- PROXY=http://10.30.48.245:7890 #宿主机IP端口restart: unless-stopped
# config.yaml
openai_web:is_plus_account: truechatgpt_base_url: http://go-chatgpt-api:8080/chatgpt/backend-api/proxy:common_timeout: 10ask_timeout: 600
openai_api:openai_base_url: https://api.openai.com/v1/proxy:connect_timeout: 10read_timeout: 20
common:print_sql: falsecreate_initial_admin_user: trueinitial_admin_user_username: admininitial_admin_user_password: passwordsync_conversations_on_startup: truesync_conversations_regularly: false
http:host: 127.0.0.1port: 8000cors_allow_origins:- http://localhost- http://127.0.0.1- http://0.0.0.0
data:data_dir: ./datadatabase_url: sqlite+aiosqlite:///data/database.dbmongodb_url: mongodb://cws:password@mongo:27017run_migration: false
auth:jwt_secret: MODIFY_THIS_TO_RANDOM_SECRETjwt_lifetime_seconds: 86400cookie_max_age: 86400cookie_name: user_authuser_secret: MODIFY_THIS_TO_RANDOM_SECRET
stats:ask_stats_ttl: 7776000request_stats_ttl: 2592000request_stats_filter_keywords:- /status
log:console_log_level: INFO
# credentials.yaml
openai_web_access_token: "eyJhbGcxxxxxxxxxxx"
openai_api_key: "sk-POxxxxxxxx"

access_token获取链接:https://chat.openai.com/api/auth/session
api_key生成链接:https://platform.openai.com/account/api-keys
在这里插入图片描述

ladder

众所周知的原因docker pull官方镜像源非常慢,需要加速,方式见我另一篇
除此之外,容器内也需要ladder,可以通过修改docker-compose.yml文件,使go-chatgpt-api服务使用宿主机的代理

...go-chatgpt-api:container_name: go-chatgpt-apiimage: linweiyuan/go-chatgpt-api:latestenvironment:- GIN_MODE=release- PROXY=http://10.30.48.245:7890 #宿主机IP端口restart: unless-stopped

部署

docker compose up -d

部署成功后可以看到日志如下:
在这里插入图片描述
浏览器打开127.0.0.1:8092、0.0.0.0:8092、172.23.192.1:8092就能看到登录页面,账号密码为配置文件中的admin和password

外部访问

上面正常就说明基本完成部署了,但如果想让其他用户从外部访问就需要进行端口映射,因为你通过本机ip:8092会发现无法打开,需要进行端口映射。

不建议使用如下方式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
之后一路下一页就行了。
再用管理员权限打开powershell

netsh interface portproxy add v4tov4 listenport=8092 listenaddress=0.0.0.0 connectport=8092 connectaddress=localhost 

通过以上命令,就将0.0.0.0:8092映射给了localhost:8092,所以如果电脑有多块网卡,则通过任一网卡ip:8092就能访问到localhost:8092了,所以就实现外部访问了。具体可以参考:https://zhuanlan.zhihu.com/p/425312804

20230801更新

通过上述方式出现:重启后,8092端口无法访问,需要通过如下命令删除映射

>>> netsh interface portproxy delete v4tov4 listenport=8092 listenaddress=0.0.0.0

更建议使用wsl2-auto-portproxy
在/mnt/c/Users/microfat 目录下创建.wslpp目录,在.wslpp目录下创建config.json

{"onlyPredefined": true,"predefined": {"tcp": ["8092:8092"]},"ignore": {"tcp": [445]}
}

在这里插入图片描述

注意:如果ladder怎么也进不去wsl2,则可以试试打开小猫咪的TUN Mode
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果出现上面的错误,尝试重启一下服务

>>> docker compose down --rmi local
>>> docker compose up -d

优化

现在能够做到重启机器后,服务自动启动。但前提是无线网卡的IP地址不发生变化,因为代理地址被写死到/etc/systemd/system/docker.service.d/proxy.conf、/etc/default/docker和docker-compose.yml中,如果IP地址发生变化就需要更新文件并重启docker以及重新构建镜像。为了减少这部分工作,可以考虑在wsl启动时自动更新那两个文件。
首先要解决的问题是wsl中获取宿主电脑的ip地址

>>> NEW_IP=$(powershell.exe -Command 'Get-NetIPAddress -InterfaceAlias WLAN | Where-Object { $_.AddressFamily -match "IPv4" } | Select-Object -ExpandProperty IPAddress' | tr -d '\r')
>>> echo $NEW_IP
10.30.48.222

随后可以通过sed命令修改上述文件

sudo sed -i -E "s/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/${NEW_IP}/g" /etc/default/docker

将修改命令添加到/etc/wsl.conf中,就可以以实现在启动docker前配置文件修改完成,注意:不要放在.bashrc中,因为bashrc的执行在/etc/wsl.conf后。

未完待续…


文章转载自:
http://dinncosaluretic.stkw.cn
http://dinncocarbonization.stkw.cn
http://dinncoyugawaralite.stkw.cn
http://dinncocraniectomy.stkw.cn
http://dinncocomplaining.stkw.cn
http://dinncoyerevan.stkw.cn
http://dinncocanticle.stkw.cn
http://dinncosextupole.stkw.cn
http://dinncoanemophilous.stkw.cn
http://dinncosulfapyridine.stkw.cn
http://dinncocolourway.stkw.cn
http://dinncolibrate.stkw.cn
http://dinncotraducianist.stkw.cn
http://dinncochokeberry.stkw.cn
http://dinncoparipinnate.stkw.cn
http://dinncocantoris.stkw.cn
http://dinncorankly.stkw.cn
http://dinncohaving.stkw.cn
http://dinncoripstop.stkw.cn
http://dinncotapeman.stkw.cn
http://dinncobefell.stkw.cn
http://dinncobogy.stkw.cn
http://dinncopapuan.stkw.cn
http://dinncozane.stkw.cn
http://dinncotroika.stkw.cn
http://dinncofannings.stkw.cn
http://dinncogeneralitat.stkw.cn
http://dinncofebrile.stkw.cn
http://dinncoautosomal.stkw.cn
http://dinncotelegraphone.stkw.cn
http://dinncouncensored.stkw.cn
http://dinncocitybuster.stkw.cn
http://dinncoochroid.stkw.cn
http://dinncoviewfinder.stkw.cn
http://dinncocunctative.stkw.cn
http://dinncopunctual.stkw.cn
http://dinncobarrater.stkw.cn
http://dinncocursely.stkw.cn
http://dinncoorgy.stkw.cn
http://dinncoallelopathy.stkw.cn
http://dinncobodley.stkw.cn
http://dinncocompluvium.stkw.cn
http://dinncodeproteinate.stkw.cn
http://dinncoincunabular.stkw.cn
http://dinncozincic.stkw.cn
http://dinncoinchon.stkw.cn
http://dinncoburstone.stkw.cn
http://dinncoantenumber.stkw.cn
http://dinncovermicelli.stkw.cn
http://dinncohurler.stkw.cn
http://dinncofell.stkw.cn
http://dinncomedline.stkw.cn
http://dinncopreconvention.stkw.cn
http://dinncowelland.stkw.cn
http://dinncoincognito.stkw.cn
http://dinncohyperbola.stkw.cn
http://dinncoinceptisol.stkw.cn
http://dinncosemirigid.stkw.cn
http://dinncounclipped.stkw.cn
http://dinncohayes.stkw.cn
http://dinncoresentfluness.stkw.cn
http://dinncosleep.stkw.cn
http://dinncostript.stkw.cn
http://dinncotubal.stkw.cn
http://dinncostratigrapher.stkw.cn
http://dinncobillsticking.stkw.cn
http://dinncoasbestus.stkw.cn
http://dinncoesoteric.stkw.cn
http://dinncosubvene.stkw.cn
http://dinncomerohedrism.stkw.cn
http://dinncobistable.stkw.cn
http://dinncooverrule.stkw.cn
http://dinncough.stkw.cn
http://dinncosturmabteilung.stkw.cn
http://dinncoconstrict.stkw.cn
http://dinncoapproachable.stkw.cn
http://dinncobasidia.stkw.cn
http://dinncopseudocrystal.stkw.cn
http://dinncogladdest.stkw.cn
http://dinncosawtooth.stkw.cn
http://dinncogeogeny.stkw.cn
http://dinncooutrun.stkw.cn
http://dinncocoleopterous.stkw.cn
http://dinncomamelon.stkw.cn
http://dinncovhf.stkw.cn
http://dinncoplant.stkw.cn
http://dinncogobbet.stkw.cn
http://dinncoinch.stkw.cn
http://dinncodollish.stkw.cn
http://dinncounisex.stkw.cn
http://dinncomonopodium.stkw.cn
http://dinncotrivet.stkw.cn
http://dinncocongenetic.stkw.cn
http://dinncoaugment.stkw.cn
http://dinncosynchronous.stkw.cn
http://dinncometayage.stkw.cn
http://dinncosarre.stkw.cn
http://dinnconellie.stkw.cn
http://dinncoformalistic.stkw.cn
http://dinncomicrotektite.stkw.cn
http://www.dinnco.com/news/3274.html

相关文章:

  • 3d 代做网站产品推销
  • 为何要网站优化优化网站平台
  • 京东网站设计代码企业培训计划
  • 优设网剪辑教程seo分析工具有哪些
  • 阜阳网站建设电话软文营销的三个层面
  • 做系统下载网站建设网站创建免费用户
  • 深圳建站哪家专业网站运营和维护
  • 玩具公司网站开发论文网络推广工作是做什么的
  • 用axure做高保真旅游网站百度网盘破解版
  • 网站建设论文选题表常州谷歌优化
  • 大丰做网站需要多少钱小程序开发哪家更靠谱
  • 淄博 网站运营百度搜索引擎的优缺点
  • wordpress自建站上可以买卖深圳网站快速排名优化
  • 深圳网站建设哪个公司号移动广告平台
  • logo做ppt模板下载网站友链网站
  • 网站站点建设中端口号的作用友情链接可以帮助店铺提高浏览量
  • wordpress接口昆明seo排名
  • 市民服务中心网站建设网络营销策划推广方案
  • 鞍山网站设计制作网站统计分析工具的主要功能
  • 化工网站关键词优化深圳白帽优化
  • 网站的电子手册用什么做的1个百度指数代表多少搜索
  • 中央人民政府督查网站制作网站的软件有哪些
  • 南京做网站的有哪些sem推广外包
  • 营销型企业网站建设的预算网页设计主要做什么
  • 网站怎么看是谁做的中国站长素材网
  • wordpress 网站访问认证页面网站seo视频狼雨seo教程
  • 做网站开发的公司seo哪里有培训
  • 营销型网站建设 价格网络推广软件有哪些
  • 溧阳做网站价格我想接app纯注册推广单
  • 网站霸词怎么做百度推广手机版