搭建部署 live2d api
封面《春音アリス * グラム》
引言
想要根据 live2d api 搭建自己的 api。我想要使用 docker 方便部署,但是不会 php 和 nginx 环境搭建,还对 docker 比较陌生。因此写下这篇文章。因为这三件都不是很熟悉,轻喷。
docker 配置
首先将 live2d api 仓库克隆下来
1 2
| git clone https://github.com/fghrsh/live2d_api.git cd live2d_api
|
docke-compose 编写
创建 docker-compose.yaml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| version: "3.7"
services: php: image: php:8-fpm volumes: - ./:/var/www/html nginx: image: nginx:latest restart: always ports: - 80:80 volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./:/usr/share/nginx/html
|
nginx 配置
创建 nginx.conf
文件,注意中间的跨域请求配置,同时 server name 这些请根据自己的需求配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
worker_processes auto;
events { worker_connections 1024; }
http { include mime.types; default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server { listen 80; server_name localhost; root /usr/share/nginx/html;
add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE'; add_header 'Access-Control-Allow-Headers' 'Content-Type';
location / { index index.php; autoindex off; }
location ~ \.php$ { root /var/www/html; fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fastcgi_params; }
error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
|
部署
使用 docker 部署比较简单
1 2 3
| docker compose up -d #或者可以用下面的 docker-compose up -d
|
测试
部署后使用浏览器打开 http://localhost/get/?id=1-23
结果如下
测试使用 stevenjoezhang 的 live2d-widget,将其中的 apiPath
替换为 http://localhost/
,打开 demo.html,结果如下,可以看到请求的 url 为 localhost,api 测试成功。
总结
本次完成了对 live2d api 的 docker 化。但是只在本地服务器上进行了测试,后续将对远程服务器进行测试。