PicGo minio 图床
1、minio搭建
# 拉去镜像
docker pull minio/minio
# 启动
docker run \
-p 9000:9000 \
-p 9002:9002 \
-d --restart=always \
-v /etc/localtime:/etc/localtime \
--name minio \
-v /docker_apps/minio/data:/data \
-e "MINIO_ROOT_USER=admin" \
-e "MINIO_ROOT_PASSWORD=123456aaa" \
-e "MINIO_BROWSER_REDIRECT_URL=http://xxx:9002" \
-e "MINIO_SERVER_URL=http://xxx:9000" \
minio/minio server /data --console-address ":9002"
2、nginx配置
标准的Root配置
在文件/etc/nginx/sites-enabled中添加下面的内容,同时删除同一个目录中现有的default文件。
server {
listen 80;
server_name example.com;
location / {
proxy_set_header Host $http_host;
proxy_pass http://localhost:9000;
}
}
注意:
用你自己的主机名替换example.com。
用你自己的服务名替换http://localhost:9000。
为了能够上传大文件,在http上下文中添加client_max_body_size 1000m;,只需按你的需求调整该值。默认值是1m,对大多数场景来说太低了。
非Root配置
当需要非root配置时,按如下方式修改location:
location ~^/files {
proxy_buffering off;
proxy_set_header Host $http_host;
proxy_pass http://localhost:9000;
}
注意:
用你自己的服务名替换http://localhost:9000。
用所需的路径替换files。这不能是~^/minio,因为minio是minio中的保留字。
所使用的路径(在本例中为files)按照惯例,应设置为minio所使用的存储桶的名称。
可以通过添加更多类似于上面定义的location定义来访问其他存储桶。
使用Rewrite的非Root配置
以下location配置允许访问任何存储桶,但只能通过未签名的URL,因此只能访问公开的存储桶。
location ~^/files {
proxy_buffering off;
proxy_set_header Host $http_host;
rewrite ^/files/(.*)$ /$1 break;
proxy_pass http://localhost:9000;
}
注意:
用你自己的服务名替换http://localhost:9000。
用所需的路径替换files。
使用的存储桶必须是公开的,通常情况是可公开读和公开写。
使用的网址必须是无符号的,因为nginx会更改网址并使签名无效。
这是我线上的配置图
我图库的图片连接就是 https://xxx/tuku/202204190928321.png
3、PicGo配置
插件下载
搜索 minio,下载
离线安装插件
到插件网址下载
把文件夹放到picgo安装目录
执行命令
npm install .\picgo-plugin-minio-2.3.2\
如果安装缓慢,可以把npm源换成淘宝的
npm config set registry https://registry.npm.taobao.org
插件配置
设置完成。