diff --git a/docker-compose/docker-compose.yml b/docker-compose/docker-compose.yml new file mode 100644 index 0000000..4a343b1 --- /dev/null +++ b/docker-compose/docker-compose.yml @@ -0,0 +1,27 @@ +version: '3' + +services: + app: + image: chenzhaoyu94/chatgpt-web # 总是使用latest,更新时重新pull该tag镜像即可 + ports: + - 3002:3002 + environment: + # 二选一 + OPENAI_API_KEY: xxxx + # 二选一 + OPENAI_ACCESS_TOKEN: xxxxxx + # 反向代理,可选 + API_REVERSE_PROXY: xxx + # 超时,单位毫秒,可选 + TIMEOUT_MS: 60000 + nginx: + build: nginx + image: chatgpt/nginx + ports: + - "80:80" + expose: + - "80" + volumes: + - ./nginx/html/:/etc/nginx/html/ + links: + - app diff --git a/docker-compose/nginx/Dockerfile b/docker-compose/nginx/Dockerfile new file mode 100644 index 0000000..387c3d8 --- /dev/null +++ b/docker-compose/nginx/Dockerfile @@ -0,0 +1,10 @@ +FROM hub.c.163.com/library/nginx + +MAINTAINER jo "tionsin@live.com" + +RUN rm -rf /etc/nginx/conf.d/default.conf +COPY ./nginx.conf /etc/nginx/conf.d/default.conf +COPY ./html/ /usr/share/nginx/html/ +EXPOSE 80 + +CMD ["nginx", "-g", "daemon off;"] diff --git a/docker-compose/nginx/nginx.conf b/docker-compose/nginx/nginx.conf new file mode 100644 index 0000000..eebdc81 --- /dev/null +++ b/docker-compose/nginx/nginx.conf @@ -0,0 +1,20 @@ +server { + listen 80; + server_name localhost; + charset utf-8; + error_page 500 502 503 504 /50x.html; + location = / { + root /usr/share/nginx/html; + index index.html index.htm; + } + + location /api { + proxy_set_header X-Real-IP $remote_addr; #转发用户IP + proxy_pass http://app:3002; + } + + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header REMOTE-HOST $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; +} diff --git a/docker-compose/readme.md b/docker-compose/readme.md new file mode 100644 index 0000000..b1131a0 --- /dev/null +++ b/docker-compose/readme.md @@ -0,0 +1,15 @@ +### docker-compose 部署教程 +- 将打包好的前端文件放到 `nginx/html` 目录下 +- ```shell + # 打包启动 + docker-compose build + docker-compose up -d + ``` +- ```shell + # 查看运行状态 + docker ps + ``` +- ```shell + # 结束运行 + docker-compose down + ```