docker安装nginx搭建简单文件共享服务

作者: Brave 分类: 学习 发布时间: 2020-02-20 12:51

使用nginx开启目录浏览功能,实现简单的http文件共享服务。

一、首先拉取nginx镜像,我使用的是arm32v7/nginx镜像。

docker pull arm32v7/nginx

二、运行一个临时的nginx实例,复制容器内的nginx.conf配置文件到主机上

docker run --name tmp-nginx-container -d arm32v7/nginx
docker cp tmp-nginx-container:/etc/nginx/nginx.conf /root/download/docker/nginx/nginx.conf
docker rm -f tmp-nginx-container

修改nginx.conf文件,在http{}内添加以下内容,开启目录浏览功能

autoindex on; #开启nginx目录浏览功能 
autoindex_exact_size off; #文件大小从KB开始显示  
autoindex_localtime on; #显示文件修改时间为服务器本地时间 
charset utf-8,gbk;#解决中文乱码问题

三、运行nginx实例,添加配置文件

docker run -d --name nginx_downloads -v /root/download/downloads/:/usr/share/nginx/html -v /root/download/docker/nginx/nginx.conf:/etc/nginx/nginx.conf:ro -p 8080:80 --restart unless-stopped arm32v7/nginx

-d后台运行
–name 为生成的实例的名字
-v 添加我的下载目录为网站的根目录
-v将修改后的nginx.conf文件替换实例内的conf文件
-p 映射主机8080到实例的80端口
arm32v7/nginx为要实例化的镜像

打开localhost:8080或你主机ip:8080查看网页

四、特殊情况,网页403禁止访问

可能你按照上面配置好了之后,打开网页还是显示403不能访问,这时候查看一下你主机要映射的网站根目录,必须给所有人设置读和执行的权限。
对应我的情况,就是执行如下命令。

chmod -R 755 /root/download/downloads

然后重启一下docker的nginx容器

docker restart nginx_downloads

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注