Sign inSign up

vincentd829/webdavserver

By vincentd829

Updated almost 4 years ago

Image
0

249

vincentd829/webdavserver repository overview

基于Nginx的WebDav服务器

基础组件:nginx 1.21.3 集成了nginx-dav-ext-module 和headers-more-nginx-module 模块

基础镜像地址: vincentd829/nginx-dav

启动配置
  1. 共享目录

    默认配置中使用 /webdav 作为共享的根目录需要使用 -v 命令将主机中的目录映射到容器中。

  2. 用户权限

    启用共享需要准确设置用户的权限。寄出容器中nginx以nginx用户的身份运行会导致无法写操作主机中的映射目录。所以需要修改容器中nginx的用户身份。 默认情况容器启动后会在容器中创建share用户名,uid=1000,gid=1000。请核对主机中如果用户的UID和GID相同。可以忽略用户名。否则需要在启动时通过环境变量传递。用来修改容器内的用户名及UID.

UID WebDav共享用户的uid。默认:1000
GID WebDav目录用户的gid。默认:1000
SHARE_USER Webdav共享用户名。默认:share
SHARE_GROUP Webdav共享用户名。默认:share

例如: 主机中 共享的目录为 /home/mike/webdav 目录的所有人为 mike uid=1000 此种情况可以不需要调整容器内的默认用户

sudo docker run --name=webdav-dataproject -p 80:80 -d \
     -v /home/mike/webdav:/webdav vincentd829/webdavserver

例如: 主机中 共享的目录为 /home/mike/webdav 目录的所有人为 mike uid=1001 此种情况必须通过环境变量调整容器内的默认用户

sudo docker run --name=webdav-dataproject -p 80:80 -d \
     -e "SHARE_GROUP=mike" -e "SHARE_USER=mike" \
     -e "GID=1001" -e "UID=1001" \
     -v /home/mike/webdav:/webdav vincentd829/webdavserver

这种情况容器内会创建用户名为mike 用户id为 1001的用户。这样容器内的nginx进程并且会以mike的用户角色运行。保证对目录拥有完全的访问权限。

  1. 用户身份认证 在webdav中使用auth_basic的方式进行认证。身份认证文件保存在 /etc/nginx/htpasswd.conf 配置文件中。可以通过修改配置文件的方式调整认证的用户名密码。 默认的用户名: admin 密码:admin@123

Tag summary

Content type

Image

Digest

sha256:5fc1a5b80

Size

8.5 MB

Last updated

almost 4 years ago

docker pull vincentd829/webdavserver:1.10