【Docker】ChatGPT - WEB 保姆级搭建教程,随时随地用上ChatGPT

【Docker】ChatGPT - WEB 保姆级搭建教程,随时随地用上ChatGPT

Do Do
2023-02-20 / 128 评论 / 3,593 阅读 / 正在检测是否收录...

引言

本文教你如何快速搭建基于OpenAI的ChatGPT。OpenAI API是OpenAI提供的一种云端服务,允许开发人员使用OpenAI的人工智能模型,以便执行自然语言处理和代码生成等任务。OpenAI API提供了一系列模型,这些模型的能力不同,适合不同的任务,并且还可以对自定义模型进行微调。

项目地址:https://github.com/Chanzhaoyu/chatgpt-web
Demo:https://chatweb.zmyos.com/

环境准备

1、购买 VPS 一台,推荐 w3d.host(专属七四折优惠码:ZMYOS w3d.host的IP纯净伪家宽,9929回国线路优质)
评测地址:https://blog.zmyos.com/w3d-lax9929.html

2、域名一个,并做好解析,解析 IP 地址为 VPS 的 IP地址

搭建步骤

1、安装 Docker 及 Docker-compose

  • 安装Docker
#更新、安装必备软件

apt-get update && apt-get install -y wget vim

#国外机:

curl -sSL https://get.docker.com/ | sh

#国内机:

curl -sSL https://get.daocloud.io/docker | sh

#开机自动启动

systemctl start docker

systemctl enable docker
  • 安装 Docker-compose
#国外机:
sudo curl -L "https://github.com/docker/compose/releases/download/v2.16.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
#国内机
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.1.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

2、安装 Nginx Proxy Manager

Nginx Proxy Manager 是一款基于Docker 的反代神器,强烈推荐使用。

  • 创建目录
mkdir -p data/docker_data/npm
cd data/docker_data/npm
  • 创建 docker-compose.yml 文件
nano docker-compose.yml 
  • 在文件中填入以下内容,然后 Ctrl+X 保存,按 Y 退出
version: "3"
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      # These ports are in format <host-port>:<container-port>
      - '80:80' # Public HTTP Port
      - '443:443' # Public HTTPS Port
      - '81:81' # Admin Web Port
      # Add any other Stream port you want to expose
      # - '21:21' # FTP
    environment:
      DB_MYSQL_HOST: "db"
      DB_MYSQL_PORT: 3306
      DB_MYSQL_USER: "npm"
      DB_MYSQL_PASSWORD: "npm"
      DB_MYSQL_NAME: "npm"
      # Uncomment this if IPv6 is not enabled on your host
      # DISABLE_IPV6: 'true'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    depends_on:
      - db

  db:
    image: 'jc21/mariadb-aria:latest'
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: 'npm'
      MYSQL_DATABASE: 'npm'
      MYSQL_USER: 'npm'
      MYSQL_PASSWORD: 'npm'
    volumes:
      - ./data/mysql:/var/lib/mysql
  • 运行
docker-compose up -d

通过 IP:81 来访问 Nginx Proxy Manager ,具体的反代操作我们接下来会讲,请先记住初始账户和密码

Email:    admin@example.com
Password:  changeme

3、安装 ChatGPT-web

创建目录

mkdir -p data/docker_data/chatgpt
cd data/docker_data/chatgpt

创建 docker-compose.yml 文件

nano docker-compose.yml

在文件中填入以下内容,然后 Ctrl+X 保存,按 Y 退出

这里的API KEY,自行申请,或者有某鱼购买账号获取
本站提供的免费API-Key如下,为避免滥用,回复可见

version: '3'

services:
  app:
    image: chenzhaoyu94/chatgpt-web:main
    ports:
      - 3002:3002
    environment:
      OPENAI_API_KEY: xxxxxx

创建完成后,运行

docker-compose up -d

然后就可以通过 IP:3002 来访问 ChatGPT

image-20230220093505228

4、反代 ChatGPT

前面是用 IP:3002 来访问ChatGPT,我们可以通过反代的方式实现域名访问,并配置 SSL 证书,就像前面的演示网址一样。接下来就来进行反代操作,用到第二步中搭建的 Nginx Proxy Manager

用 IP:81 打开 Nginx Proxy Manager,第一次登录以后需要修改用户和密码,请自行配置

下面介绍反代的操作

打开 Proxy Hosts -> 点击右上角 Add Proxy Hosts -> 按照图中进行配置 -> 颁发 SSL 证书并开启强制 Https 访问 -> 点击 Save 保存

image-20230220094112997

image-20230220094203594

至此,就完成反代的工作,接下来就可以用刚才解析的域名访问 ChatGPT 了。

Enjoy~
0

评论 (128)

取消
  1. 头像
    大师兄
    Windows 10 · Google Chrome

    后期修改KEY具体该怎么操作?

    回复
    1. 头像
      Do Do 作者
      Windows 10 · Google Chrome
      @ 大师兄

      在docker-compose中修改API-KEY,然后重新运行docker-compose

      回复
    2. 头像
      Titan
      Windows 10 · Google Chrome
      @ 大师兄

      key

      回复
    3. 头像
      A A A
      Windows 10 · Google Chrome
      @ 大师兄

      回复可见。。

      回复
  2. 头像
    g6162227
    Windows 10 · Google Chrome

    快来学一学

    回复
  3. 头像
    chat233
    MacOS · Safari

    楼下18cm

    回复
  4. 头像
    大哥大
    MacOS · Safari

    过来学习一个

    回复
  5. 头像
    对对对
    Windows 10 · Google Chrome

    在docker-compose中修改API-KEY,然后重新运行docker-compos

    回复
  6. 头像
    abcd
    Windows 10 · Google Chrome

    学习一个

    回复
  7. 头像
    enden
    Windows 10 · Google Chrome

    过来学习一个

    回复
  8. 头像
    摩卡
    Windows 10 · Google Chrome

    感觉是好东西,我来看看

    回复
  9. 头像
    123
    Windows 10 · Google Chrome

    先学习一下

    回复
  10. 头像
    暖树
    Windows 10 · Google Chrome

    用LINUX系统还是?

    回复
    1. 头像
      Do Do 作者
      Windows 10 · Google Chrome
      @ 暖树

      Linux内核,Debian 系统

      回复
  11. 头像
    dw2
    Windows 10 · Google Chrome

    过来学习一个

    回复
  12. 头像
    暖树
    Windows 10 · Google Chrome

    然后就可以通过 IP:3002 来访问 ChatGPT

    HTTP ERROR 502

    出错,怎么办

    回复
  13. 头像
    likayo
    Windows 10 · Google Chrome

    过来学习一个

    回复
  14. 头像
    Windows 10 · Google Chrome

    学习一个

    回复
  15. 头像
    暖树
    Windows 10 · Google Chrome

    有安装成功的吗?

    回复
  16. 头像
    123
    Windows 10 · Google Chrome

    kankan

    回复
  17. 头像
    test
    Windows 10 · Google Chrome

    厉害厉害厉害

    回复
  18. 头像
    acd
    Android · Google Chrome

    如果我想修改一些代码,请问拉取的源码在哪个文件夹啊

    回复
  19. 头像
    二师兄
    Windows 10 · Google Chrome

    看看怎么弄

    回复
  20. 头像
    Ynbn
    Windows 10 · Google Chrome

    看看怎么安装部署的。

    回复
  21. 头像
    23
    Windows 10 · Google Chrome

    嘎嘎嘎

    回复
  22. 头像
    afadsf
    Windows 10 · Google Chrome

    如果我想修改一些代码,请问拉取的源码在哪个文件夹啊

    回复
  23. 头像
    111
    Windows 10 · Google Chrome

    竟然需要回复可见....

    回复
  24. 头像
    090kj
    Windows 10 · Google Chrome

    表情

    回复
  25. 头像
    65
    Windows 10 · Google Chrome

    lih

    回复
  26. 头像
    快来学一学
    Windows 10 · Google Chrome

    快来学一快来学一学

    回复
  27. 头像
    vincent
    Windows 10 · Google Chrome

    楼上18cm

    回复
  28. 头像
    夏日
    Windows 10 · FireFox

    可以可以

    回复
  29. 头像
    1234589
    Windows 10 · Google Chrome

    那就再看看吧

    回复
  30. 头像
    运工具
    Windows 10 · Google Chrome

    再学习一次

    回复
  31. 头像
    怒IG的烦恼
    Windows 10 · Google Chrome

    再来学习一下,感谢分享

    回复
  32. 头像
    magic3278
    Windows 10 · Google Chrome

    学习一下啊

    回复
  33. 头像
    magic3278
    Windows 10 · Google Chrome

    过来学下一下!

    回复
  34. 头像
    妮妮
    Windows 10 · Google Chrome

    回复?

    回复
  35. 头像
    changeme
    Windows 7 · Google Chrome

    changeme

    回复
  36. 头像
    tao
    Windows 10 · Google Chrome

    123

    回复
  37. 头像
    tao
    Windows 10 · Google Chrome

    来学习一下

    回复
  38. 头像
    ggy
    Windows 10 · Google Chrome

    来学习一下

    回复
  39. 头像
    chatgpt
    Windows 10 · Google Chrome

    码住

    回复
  40. 头像
    kkk
    Windows 10 · Google Chrome

    学习一个

    回复
  41. 头像
    xicijiese
    Windows 10 · Google Chrome

    感谢楼主分享

    回复
  42. 头像
    xiaijice
    Windows 10 · Google Chrome

    过来学习一下!!

    回复
  43. 头像
    小白魔法
    Windows 10 · Google Chrome

    感谢大佬支持~已经可以正常使用了

    回复
  44. 头像
    断水流
    Windows 10 · Google Chrome

    非常感谢

    回复
  45. 头像
    的发生大事
    Windows 10 · Google Chrome

    回复一下看看

    回复
  46. 头像
    sam
    Windows 10 · Google Chrome

    回复一下看看

    回复
  47. 头像
    Demon
    Windows 10 · Google Chrome

    共享分享

    回复
  48. 头像
    marfef
    MacOS · Google Chrome

    表情感谢分享

    回复
  49. 头像
    围棋
    MacOS · Google Chrome

    没有看到在哪一步拉取源码

    回复
  50. 头像
    nagaki
    Windows 10 · Google Chrome

    kank

    回复
  51. 头像
    黑八
    Android · Google Chrome

    好东西,研究研究

    回复
  52. 头像
    测试
    Windows 10 · Google Chrome

    如何设置账号密码访问

    回复
  53. 头像
    南猫
    Windows 10 · Google Chrome

    这个好啊 怎么搭建的 有没有成功的

    回复
  54. 头像
    南猫
    Windows 10 · Google Chrome

    6666这个怎么操作的

    回复
  55. 头像
    小白
    Windows 10 · Google Chrome

    学习一下

    回复
  56. 头像
    xiaobai
    Windows 10 · Google Chrome

    快来学一学快来学一学

    回复
  57. 头像
    二师弟
    Windows 10 · Google Chrome

    特地回复,看看大神show

    回复
  58. 头像
    znshen
    Linux · Google Chrome

    学习一下

    回复
  59. 头像
    znshen
    Linux · Google Chrome

    认真学习一下

    回复
  60. 头像
    Windows 10 · Google Chrome

    博主您好!有个问题困扰到我了,请您解答一下,就是我已经搭建了,但是我用我的IP:81,我的IP:3002进去的时候显示网页无法正常运行,用我的IP:80网页反馈回来Congratulations!,请问我这个是因为什么问题导致的?也是按照这个教程去弄的

    回复
  61. 头像
    dawfawf
    Windows 10 · Google Chrome

    666

    回复
  62. 头像
    san
    Windows 10 · Google Chrome

    请问一下~我打上去域名了 为什么网站进不去~就算ping也是只能ping到一条了,然后就超时了

    回复
  63. 头像
    little
    MacOS · Google Chrome

    牛逼,学习学。

    回复
  64. 头像
    little
    MacOS · Google Chrome

    回复了,怎么还不行呢?

    回复
  65. 头像
    swimly
    Windows 10 · Google Chrome

    学习

    回复
  66. 头像
    qweqwe
    MacOS · Google Chrome

    qwe

    回复
  67. 头像
    1
    Windows 10 · Google Chrome

    学习学习

    回复
  68. 头像
    tiger
    Windows 10 · Google Chrome

    学习了 大佬

    回复
  69. 头像
    tiger
    Windows 10 · Google Chrome

    过来学习一下,厉害!

    回复
  70. 头像
    11
    Windows 10 · Google Chrome

    谢谢分享 看看啊

    回复
  71. 头像
    1231
    Windows 10 · Google Chrome

    左下角哪个在哪里修改

    回复
  72. 头像
    那么大的小吃
    Windows 10 · Google Chrome

    感谢分享 博主好人表情

    回复
  73. 头像
    卧槽牛啊牛啊
    Windows 10 · FireFox

    卧槽牛啊牛啊

    回复
  74. 头像
    猫熊
    Windows 10 · Google Chrome

    士大夫但是

    回复
  75. 头像
    大哥的小迷妹
    Windows 10 · Google Chrome

    厉害厉害

    回复
  76. 头像
    狂笑一君
    Windows 10 · QQ Browser

    正在部署,感谢分享

    回复
  77. 头像
    狂笑一君
    Windows 10 · QQ Browser

    谢谢教程!

    回复
  78. 头像
    6666
    MacOS · Google Chrome

    大佬牛逼!

    回复
  79. 头像
    dalao
    MacOS · Google Chrome

    kankana

    回复
  80. 头像
    HAH
    Windows 10 · Google Chrome

    BUCUOBUCUO

    回复
  81. 头像
    fdgd
    Windows 10 · Google Chrome

    快来学一学

    回复
  82. 头像
    uuiooio
    Windows 10 · Google Chrome

    key key key

    回复
  83. 头像
    kkkkk
    Windows 10 · Google Chrome

    为啥回复不了啊

    回复
  84. 头像
    alexnhe
    MacOS · Safari

    好详细,感谢

    回复
  85. 头像
    test
    Windows 10 · Google Chrome

    后期修改KEY具体该怎么操作

    回复
  86. 头像
    MK
    Windows 10 · Google Chrome

    太需要这篇文章的信息了,相当感谢!!!!!!!!!!

    回复
  87. 头像
    小师弟
    Windows 10 · Google Chrome

    回复可见、这嘎嘎啊

    回复
  88. 头像
    小哥
    MacOS · Google Chrome

    可以的,学习一下

    回复
  89. 头像
    为人人
    MacOS · Google Chrome

    按照教程来的 ip:81 和3002都访问不了

    回复
  90. 头像
    Ly
    Windows 10 · Google Chrome

    谢谢,很有参考价值

    回复
  91. 头像
    1112343
    Windows 10 · Google Chrome

    kankankankanknakan

    回复
  92. 头像
    Windows 10 · Google Chrome

    辛苦了

    回复
  93. 头像
    www
    Windows 10 · Google Chrome

    www

    回复
  94. 头像
    ttttt
    Windows 10 · Google Chrome

    ttt

    回复
  95. 头像
    tomm
    Windows 10 · Google Chrome

    学习下下

    回复
  96. 头像
    111
    Windows 10 · Google Chrome

    111表情

    回复
  97. 头像
    学习
    Windows 10 · Google Chrome

    学习

    回复
  98. 头像
    laowang
    Windows 10 · Google Chrome

    Email: admin@example.com
    Password: changeme
    Nginx登陆失败,提示Bad Gateway

    回复
    1. 头像
      laowang
      Windows 10 · Google Chrome
      @ laowang

      自问自答,重启一下容器就好了

      回复
      1. 头像
        xigua
        Windows 10 · Google Chrome
        @ laowang

        老哥你什么环境啊,我重启了容器还是提示Bad Gateway

        回复
        1. 头像
          xigua
          Windows 10 · Google Chrome
          @ xigua

          docker

          回复
        2. 头像
          eric
          Windows 10 · Google Chrome
          @ xigua

          我也是重启后,还是提示 Bad Gateway,后来解决了吗

          回复
  99. 头像
    laowang
    Windows 10 · Google Chrome

    用docker安装完了,去哪里修改index.html文件啊?

    回复
  100. 头像
    火星人
    Windows 10 · Google Chrome

    看看楼长这边还有key可以捡漏么

    回复
  101. 头像
    好人
    MacOS · Google Chrome

    嗯,恢复课件

    回复
  102. 头像
    测试一下
    MacOS · Google Chrome

    回复可见...

    回复
  103. 头像
    瞌睡兮兮
    Windows 10 · Google Chrome

    学习

    回复
  104. 头像
    小白菜
    Windows 10 · Google Chrome

    学习下怎么用

    回复
  105. 头像
    搭建
    MacOS · Google Chrome

    回复看看能正常搭建不

    回复
  106. 头像
    秋天
    Windows 10 · Google Chrome

    学习

    回复
  107. 头像
    123法大大
    MacOS · Google Chrome

    申的

    回复
  108. 头像
    hqyz
    Windows 10 · Google Chrome

    key

    回复
  109. 头像
    老蛇皮
    Windows 10 · Google Chrome

    11111

    回复
  110. 头像
    1255
    Windows 10 · Google Chrome

    真的是泰裤辣

    回复
  111. 头像
    啊啊啊
    Windows 10 · Google Chrome

    看看啊啊啊啊啊啊

    回复
  112. 头像
    k
    Windows 10 · Google Chrome

    niubi

    回复
  113. 头像
    key
    Windows 10 · Google Chrome

    1111

    回复
  114. 头像
    波少
    Windows 10 · Google Chrome

    能否出本地搭建的教程啊,我是小白。

    回复
  115. 头像
    波少
    Windows 10 · Google Chrome

    改为本地使用如何操作,有没有详细点的

    回复
  116. 头像
    gege
    Windows 10 · Google Chrome

    nano docker-compose.yml

    回复
  117. 头像
    dasd
    Windows 10 · Google Chrome

    nano docker-compose.ymlnano docker-compose.ymlnano docker-compose.yml

    回复
  118. 头像
    ssdad
    Windows 10 · Google Chrome

    nano docker-compose.ymlnano docker-compose.yml

    回复
  119. 头像
    sdad
    Windows 10 · Google Chrome

    smqk a a 什么情况啊

    回复
  120. 头像
    dsadas
    Windows 10 · Google Chrome

    version: "3"
    services:
    app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
    # These ports are in format :
    - '80:80' # Public HTTP Port
    - '443:443' # Public HTTPS Port
    - '81:81' # Admin Web Port
    # Add any other Stream port you want to expose
    # - '21:21' # FTP
    environment:
    DB_MYSQL_HOST: "db"
    DB_MYSQL_PORT: 3306
    DB_MYSQL_USER: "npm"
    DB_MYSQL_PASSWORD: "npm"
    DB_MYSQL_NAME: "npm"
    # Uncomment this if IPv6 is not enabled on your host
    # DISABLE_IPV6: 'true'
    volumes:
    - ./data:/data
    - ./letsencrypt:/etc/letsencrypt
    depends_on:
    - db

    db:
    image: 'jc21/mariadb-aria:latest'
    restart: unless-stopped
    environment:
    MYSQL_ROOT_PASSWORD: 'npm'
    MYSQL_DATABASE: 'npm'
    MYSQL_USER: 'npm'
    MYSQL_PASSWORD: 'npm'
    volumes:
    - ./data/mysql:/var/lib/mysql

    回复