使用Minio和Nginx搭建图片服务器

it2024-12-20  12

参考文章1:Minio的安装和使用

参考文章2:用docker安装使用nginx

本文用于记录个人搭建简单图片服务器的过程。感谢上述文章的作者。

Minio

我挂载的Minio保存路径在宿主机为 /usr/local/minio/data,其下有一个目录 image(也是Minio的bucket),用于存放图片。

参考文章1中的运行容器方式②,如果失败,则可能是因为SELinux未关闭,进行关闭即可。

Minio只用于存储图片,不使用Minio的链接来访问图片。

Nginx

在参考文章2的基础上,需要把Minio存放图片的路径加入到docker运行nginx的命令中去,如

docker run --privileged=true --name nginx -d -p 80:80 -v /usr/local/nginx/html:/usr/share/nginx/html -v /usr/local/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /usr/local/nginx/conf.d:/etc/nginx/conf.d -v /usr/local/nginx/logs:/var/log/nginx -v /usr/local/minio/data:/usr/local/minio/data --restart=always nginx

其中 -v 表示挂载,冒号前的路径表示宿主机的路径,冒号后的路径表示即将要运行的docker容器内的路径。

--restart=always 表示当docker服务重启之后,该docker容器也总是重启。

下面是宿主机 /usr/local/nginx/conf.d/default.conf 配置文件的参考。

server { listen 80; server_name localhost; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { root /usr/share/nginx/html; index index.html index.htm; } location /image/ { root /usr/local/minio/data; #Minio保存图片的路径 } #error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }

假设在Minio上保存了一张图片,名为75a7d9c7-1829-4ec1-a409-23ce1526c36f.jpg,宿主机ip为 192.168.72.129。

则使用 http://192.168.72.129/image/75a7d9c7-1829-4ec1-a409-23ce1526c36f.jpga 即可访问该图片,

至此,一个简单的图片服务器搭建完成。

最新回复(0)