docker如何创建nginx图片服务器
作者:大鹏blog
这篇文章主要介绍了docker如何创建nginx图片服务器问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
背景
在容器应用商店中,我们要给 helm chart 添加icon标签, 需要一个图片服务器
解决办法
使用docker nginx 搭建
1.编写 nginx配置文件
server { listen 80; server_name localhost; #(5) #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { root /usr/share/nginx/html; index index.html index.htm; } #(1) location /images/ { root /mnt/; autoindex on; #(2) autoindex_exact_size off; #(3) autoindex_localtime on; #(4) charset utf-8,gbk; #(5) } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
参数说明:
(1):添加图片目录映射,映射目录为/mnt/images/
(2):在Nginx下默认是不允许列出整个目录的。如需此功能,将该项设置为on
(3):默认为on,显示出文件的确切大小,单位是bytes 改为off后,显示出文件的大概大小,单位是kB或者MB或者GB
(4):默认为off,显示的文件时间为GMT时间 注意:改为on后,显示的文件时间为文件的服务器时间
(5):设置编码(防止中文乱码),可以设置对全局生效或者部分路径生效
2.编写Dockerfile
FROM nginx:latest MAINTAINER username COPY default.conf /etc/nginx/conf.d/default.conf EXPOSE 80
3.build镜像
docker build -f dockerfile -t image:v1 .
4.运行
docker run -d --name image -p 8089:80 -v images:/mnt/images image:v1
5.验证
curl localhost:8089/images/1.png
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。