win10下docker搭建fastDFS
最近因公司需求,搭建自己的文件服务器,不再使用oss。于是在本地开发环境win10下先整个demo出来。
docker下安装fastDFS
win10下 docker的教程自己百度吧。
- 查找镜像
使用$ docker search fastdfs - 拉取镜像
$ docker image pull delron/fastdfs - 运行tracker
$ docker run -itd --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker
命令中-v /var/fdfs/tracker:/var/fdfs的意思是将fastDFS tracker运行目录映射到本机的 /var/fdfs/tracker目录中。使用$ docker ps 查看tracker 是否运行起来。 - 运行storage
$ docker run -itd --network=host --name storage -e TRACKER_SERVER=192.168.99.100:22122 -v /var/fdfs/storage:/var/fdfs delron/fastdfs storage
这里的192.168.99.100是我docker运行是被分配的ip
将fastDFS storage运行目录映射到本机的/var/fdfs/storage目录中
PS:笔者在centos7上遇到,安装后提交报错误码28的错误提示,意思是storage的磁盘容量不足,可以更改命令中的
-v /myPath:/var/fdfs。保证/myPath的空间足够大,就可以解决错误。或者修改tracker.conf的配置。
PS:查找tracker.conf或者server.conf的位置的方法。- 笔者的配置文件在 /etc/fdfs/ 下
- 还可以使用 find / -name tracker.conf 查找
到此就安装成功了。接下来使用java代码测试一波。
参考连接
https://blog.csdn.net/qq_43455410/article/details/84797814
如需要完整代码实例,请下载 https://github.com/LuiceCheng/common
安装完成之后,就需要在项目中添加配置
fastdfs:
tracker-server: 192.168.99.100:22122
nginx_addr: 192.168.99.100:8888 // 8888端口为 storage.conf文件中的的http.server.port
http_tracker_http_port: 80 // 80是nginx.conf 的监听端口
http_secret_key: HandFastDFSToken
http_anti_steal_token: true
charset: UTF-8
network_timeout_in_seconds: 30
connect_timeout_in_seconds: 10
file_server_addr: 192.168.99.100
max_storage_connection: 8
因为文件下载时,是通过nginx做的代理,所以我们需要配置nginx。在我们用的这个delron/fastdfs镜像中,已经为我们安装好了nginx。使用 docker exec -it storage bash 进入 容器,当前的目录就是 /tmp/nginx/nginx-1.12.2/ 。在conf/ 下的nginx.conf就能找到80端口;使用cd /etc/fdfs/下的storage.conf文件中就能找到http.server.port了。
使用 cd /var/fdfs/ 可以看见fastdfs上传的数据和日志
继续输入命令 cd data/00/00就可看到上传后的文件名称
来源:CSDN
作者:HuoK
链接:https://blog.csdn.net/qq_27576109/article/details/89499757