一、手把手教你docker搭建fastDFS文件上传下载服务器
在搭建fastDFS文件上传下载服务器之前,你需要准备的有一个可连接的linux服务器,并且该linux服务器上已经安装了docker,若还有没安装docker的,先百度自行安装docker。
1.执行命令:docker search fastdfs

2.我选择的是season/fastdfs镜像,使用的标签是1.2(之所以选择这个镜像,是因为下载量最多,选择1.2版本 是因为最新版本不稳定,所以使用最新版本之前的稳定版本。我们下载镜像一定要下载自己的或者官方的镜像。)
执行命令:docker pull season/fastdfs:1.2
等待一段时间,便可下载完成
此时执行命令:docker images
如果可以看下以下fastdfs的镜像,即已成功安装了fastdfs的镜像

3.执行命令:mkdir -p /data/tracker
该目录用于和tracker进行目录挂载,接下来就是创建tracker容器
执行命令:docker run -id --name tracker --restart=always --net host -v /etc/localtime:/etc/localtime -v /data/tracker:/fastdfs/tracker/data season/fastdfs:1.2 tracker

4.执行命令:mkdir -p /data/storage
该目录存储上传的文件,然后是创建storage的容器
执行命令:docker run -id --name storage --restart=always --net host -v /etc/localtime:/etc/localtime -v /data/storage:/fastdfs/store_path -e TRACKER_SERVER="ip:22122" season/fastdfs:1.2 storage
该命令中需要执行TRACKER_SERVER的ip,这个ip换成你自己linux服务器的ip地址

5.将tracker容器中的客户端配置文件client.conf复制到宿主机,进行修改client.conf配置文件
执行命令:docker cp tracker:/etc/fdfs/client.conf ./
对client.conf文件编辑修改
执行命令:vi client.conf
将tracker_server的ip改为你linux服务器的ip
6.再将拷贝到宿主机上的client.conf文件 复制回tracker容器
执行命令:docker cp client.conf tracker:/etc/fdfs/
7.进入tracker容器,执行命令:docker exec -it tracker bash
创建文件,执行命令:echo "zhangshoufu.com" >index.html
将文件上传到服务器,执行命令:fdfs_upload_file /etc/fdfs/client.conf index.html

8.此时只是能够本机访问,要想web访问,还必须集成nginx
首先创建nginx配置文件的文件夹,执行命令:mkdir /etc/nginx/ -p
将storage容器中的nginx配置文件拷贝到你创建的nginx文件夹下,执行命令:docker cp storage:/etc/nginx/conf/nginx.conf ./

9.创建nginx的容器,执行命令:docker run -id --name fastdfs_nginx --restart=always -v /data/storage:/fastdfs/store_path -v /etc/nginx/nginx.conf:/etc/nginx/conf/nginx.conf -p 8888:80 -e TRACKER_SERVER=ip:22122 season/fastdfs:1.2 nginx
该命令中需要执行TRACKER_SERVER的ip,这个ip换成你自己linux服务器的ip地址

10.修改nginx的配置文件,执行命令:vi /etc/nginx/nginx.conf
将location 中的内容修改为:
location / {
root /fastdfs/store_path/data;
ngx_fastdfs_module;
}

重启fastdfs_nginx容器,执行命令:docker restart fastdfs_nginx
linux服务器上访问你刚上传的文件,
执行命令:curl -i http://127.0.0.1:8888/group1/M00/00/00/rB4ACV6ab6eAQrtmAAAAEN9dPo040.html

到此你已经成功搭建了fastDFS文件服务器,此时你可以在你得web上访问图片的url,发现可以进行web访问了

over~but 下一篇继续分享用SpringBoot上传文件到文件系统
一、手把手教你docker搭建fastDFS文件上传下载服务器的更多相关文章
- spring boot(十八)集成FastDFS文件上传下载
上篇文章介绍了如何使用Spring Boot上传文件,这篇文章我们介绍如何使用Spring Boot将文件上传到分布式文件系统FastDFS中. 这个项目会在上一个项目的基础上进行构建. 1.pom包 ...
- xftp实现本地与服务器的文件上传下载(windows)
背景: Jemter环境搭建,需上传下载服务器文件到aws服务器上,由于secureCRT的局限性它只支持pub格式的密钥,不支持pem格式密钥,xshell是支持pem格式的,所以尝试安装xshel ...
- 手把手教你制作AppPreview视频并上传到appStore进行审核
手把手教你制作AppPreview视频并上传到appStore进行审核 注意,你需要使用iMovie才能够制作AppPreview视频文件,用QuickTime录制的无效! 最终效果 1. 新建一个事 ...
- Java 客户端操作 FastDFS 实现文件上传下载替换删除
FastDFS 的作者余庆先生已经为我们开发好了 Java 对应的 SDK.这里需要解释一下:作者余庆并没有及时更新最新的 Java SDK 至 Maven 中央仓库,目前中央仓库最新版仍旧是 1.2 ...
- FastDFS实现文件上传下载实战
正好,淘淘商城讲这一块的时候,我又想起来当时老徐让我写过一个关于实现FastDFS实现文件上传下载的使用文档,当时结合我们的ITOO的视频系统和毕业论文系统,整理了一下,有根据网上查到的知识,总结了一 ...
- fastDFS与java整合文件上传下载
准备 下载fastdfs-client-java源码 源码地址 密码:s3sw 修改pom.xml 第一个plugins是必需要的,是maven用来编译的插件,第二个是maven打源码包的,可以不要. ...
- FastDFS 文件上传工具类
FastDFS文件上传工具类 import org.csource.common.NameValuePair; import org.csource.fastdfs.ClientGlobal; imp ...
- Nginx + Lua搭建文件上传下载服务
收录待用,修改转载已取得腾讯云授权 最新腾讯云技术公开课直播,提问腾讯W3C代表,如何从小白成为技术专家?点击了解活动详情 作者 | 庄进发 编辑 | 迷鹿 庄进发,信息安全部后台开发工程师,主要负责 ...
- SpringBoot入门一:基础知识(环境搭建、注解说明、创建对象方法、注入方式、集成jsp/Thymeleaf、logback日志、全局热部署、文件上传/下载、拦截器、自动配置原理等)
SpringBoot设计目的是用来简化Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,SpringBoot致力于在蓬勃发 ...
随机推荐
- django的增删改查
前置条件: 已有一个model (tbl_user) ,用户表 1.查询 # 查询用户表 username是cx的数据 user_object = tbl_user.objects.filter(us ...
- IDEA Dao层快速跳转Mapper.xml 文件的插件
1.Idea 窗口→File→Setting→Plugins, 2.搜索 Free MyBatis plugin, install,等待安装完成后,Restart IDEA .
- 监控框架 - prometheus - 参数指标
基于SpringBoot2.0+ Actuator metrics的监控(基于Oracle JDK9,G1) 引言 SpringBoot2在spring-boot-actuator中引入了microm ...
- 菜鸡的Java笔记 - java 线程的同步与死锁 (同步 synchronization,死锁 deadlock)
线程的同步与死锁 (同步 synchronization,死锁 deadlock) 多线程的操作方法 1.线程同步的产生与解决 2.死锁的问题 ...
- centos7.1使用kubeadm部署kubernetes 1.16.2的master高可用
机器列表,配置域名解析 cat /etc/hosts192.168.200.210 k8s-master1192.168.200.211 k8s-master2192.168.200.212 k8s- ...
- Centos8 部署 ElasticSearch 集群并搭建 ELK,基于Logstash同步MySQL数据到ElasticSearch
Centos8安装Docker 1.更新一下yum [root@VM-24-9-centos ~]# yum -y update 2.安装containerd.io # centos8默认使用podm ...
- [loj6203]可持久化队列
对于每一个节点,我们只需要知道他上len次插入(len是这个队列的元素个数)时所插入的元素就可以了 那么只需要将所有插入建为一棵树,然后找len次祖先就可以了,这个用倍增维护即可 还有一种比较神奇的做 ...
- [atAGC013F]Two Faced Cards
先对$c_{i}$离散到$[0,n]$上,并令$a_{i},b_{i},d_{i},e_{i}$对应到第一个大于等于他的数 考虑若$a_{n+1}$和$b_{n+1}$也已经确定如何做: 有一个$o( ...
- [bzoj1303]中位数图
由于是排列,因此b一定只出现了一次,找到出现的位置并向左右扩展考虑如何判定是否满足条件,当且仅当$[左边比b小的数ls]+[右边比b小的数rs]=[左边比b大的数lb]+[右边比b大的数rb]$,暴力 ...
- 面向对象中static的理解(2) (单例模式)
作用:只产生一个对象 1 class Yoshi { 2 public: 3 //外界只能通过这种方式调用这一个对象,返回必须是引用 4 static Yoshi& getInstance() ...