内网服务器(无法联网)使用docker搭建自己的NAS服务(filebrowser)

avatar
作者
筋斗云
阅读量:0

0x00 问题描述

课题组内有一台内网部署的ubuntu 23服务器,想要在上面运行一个NAS服务,供内网环境中的文件存储与分享。希望搭建一个功能简单、容易上手的NAS服务,并且希望通过docker部署,减少对于服务器上现有应用的影响。另外,内网服务器意味着它无法连接互联网下载应用,只能在本地下载好了之后上传到服务器安装。

0x01 NAS选择

由于需要部署NAS服务器的内网服务器无法连接互联网,因此一些NAS高级功能(比如文件同步、个性化插件等)或者私人云盘类型的应用此处并不适用。我们需要一个功能简单但是稳定可靠的NAS开源实现,至少应包含多用户登录、文件上传/下载、内网文件分享等功能。

寻找一翻,发现filebrowser能很好地满足我的需求,且可以通过docker镜像便捷部署。

官网地址:https://filebrowser.org/

github地址:https://github.com/filebrowser/filebrowser  项目仓库22.9k star

功能展示:

0x02 部署步骤1:手动下载安装docker 

课题组的服务器系统是ubuntu 23,通过apt进行包管理,因此我们可以通过下载docker的.deb格式的安装文件快速安装(相比于源代码编译模式,更加简单快速)。

参考docker官方用户文档,按照‘Install from a packet’章节的提示执行如下操作:

(1)访问https://download.docker.com/linux/ubuntu/dists/,选择操作系统版本对应的子目录(这里用的是ubuntu版本的别名,如ubuntu 23对应的是mantic)

(2)进入子目录/mantic/pool/stable,选择处理器架构适用的子目录(根据自己机器实际情况选择)

(3)下载以下内容,资源建议下载最新的版本

  • containerd.io_<version>_<arch>.deb
  • docker-ce_<version>_<arch>.deb
  • docker-ce-cli_<version>_<arch>.deb
  • docker-buildx-plugin_<version>_<arch>.deb(不必须安装)
  • docker-compose-plugin_<version>_<arch>.deb(不必须安装)​​​​​​ 

(4)远程连接内网服务器,并将下载好的文件上传到服务器

(5)通过库文件,离线安装docker(这里是ubuntu系统的安装命令,centos请使用yum install安装)

  • sudo dpkg -i docker-ce-cli_<version>_amd64.deb
  • sudo dpkg -i containerd.io_<version>_amd64.deb
  • sudo dpkg -i docker-ce_<version>_amd64.deb

(6)验证docker是否安装成功

sudo systemctl start docker sudo systemctl enable docker sudo docker version

 有下图类似的结果说明安装成功了

 0x03 部署步骤2:手动下载filebrowser的docker镜像

正常能联网的服务器在安装完docker后,可以直接按照你需要的服务名称拉取镜像,但是我们的服务器无法联网,因此需要在能联网的机器上手动下载docker镜像。

找一台能联网的机器,并且安装docker(联网机器上安装docker很简单,直接使用操作系统带的软件管理器下载安装即可),然后使用如下命令下载镜像文件。

docker pull filebrowser/filebrowser docker save filebrowser/filebrowser -o filebrowser.tar 

0x04 部署步骤3:启动filebrowser的docker镜像

将上一步下载好的filebrowser.tar文件上传到我们的离线服务器,之后即可使用下面的命令启动docker镜像。需要注意:(1)文件路径请自己按照实际情况指定;(2)“-p 8080:80”这里指的是docker镜像的80端口映射到服务器的8080端口,换句话说就是外部访问服务器的8080端口时流量将会转发给filebrowser镜像的80端口。

docker run -d \   -v /path/to/your/data:/srv \   -v /path/to/database:/database \   -v /path/to/config:/config \   -p 8080:80 \   --name filebrowser \   filebrowser/filebrowser

 0x05 部署步骤4:使用filebrowser

 在浏览器的url栏填写:服务器ip地址:8080,即可进入登录界面。首次登录默认的用户名和密码都是admin。登录进入就可以使用了。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!