亲宝软件园·资讯

展开

docker搭建fastdfs

luffy5459 人气:0

fastdfs是一个开源的分布式文件系统,在实际使用中,通过源码编译安装过程非常复杂,但是通过docker快速构建却非常容易。下面介绍通过docker安装fastdfs的方法。

docker镜像的选择也挺重要的,我最开始选择season/fastdfs,发现有些麻烦,有的版本好像带nginx比如1.2,有的版本又不带nginx比如latest。我使用season/fastdfs镜像安装没有成功过,但是使用delron/fastdfs镜像就成功了,而且只需要启动两个容器,一个tracker,一个storage即可。storage容器中自带了nginx,不需要额外启动一个nginx容器。

先通过docker pull delron/fastdfs拉取最新的镜像。

    分别启动tracker容器和storage容器。

[root@server ~]# docker run -d --name tracker -p 22122:22122 delron/fastdfs tracker
418de7394acd11a4b92b014501e9f7aaa240099249b95ea6aa49cd6bd31da18e
[root@server ~]# docker run -d --name storage -p 8888:8888 -p 23000:23000 -e TRACKER_SERVER=192.168.197.128:22122 delron/fastdfs storage
ac5ea9a959e2fbcdba433d8711e36df95f23761ff5cdcba6c5d3dea954550e90
[root@server ~]# docker ps
CONTAINER ID   IMAGE            COMMAND                  CREATED         STATUS         PORTS                                                                                                           NAMES
ac5ea9a959e2   delron/fastdfs   "/usr/bin/start1.sh …"   5 seconds ago   Up 4 seconds   8080/tcp, 0.0.0.0:8888->8888/tcp, :::8888->8888/tcp, 22122/tcp, 0.0.0.0:23000->23000/tcp, :::23000->23000/tcp   storage
418de7394acd   delron/fastdfs   "/usr/bin/start1.sh …"   8 minutes ago   Up 8 minutes   8080/tcp, 8888/tcp, 23000/tcp, 0.0.0.0:22122->22122/tcp, :::22122->22122/tcp                                    tracker
[root@server ~]# 

    启动tracker容器的时候,暴露22122端口给宿主机,启动storage容器的时候暴露8888,23000端口给宿主机。

    这两个容器的启动,跟我们平时启动别的容器不一样的是,在指定虚拟机镜像之后,增加了一个命令tracker和storage,这两个不同的命令会针对同样的镜像,启动不同的服务。

上传一张图片到storage容器中:

docker cp vmware-0.png storage:/

进入容器测试:

检查/etc/fdfs/client.conf配置

这里的tracker_server=192.168.197.128:22122配置,直接根据我们在创建storage容器的时候指定的环境变量TRACKER_SERVER自动配置了,而使用season/fastdfs镜像这里就不行,需要手动修改配置。这一点很坑。

上传我们之前复制到容器中的图片vmware-0.png 

上传正常,返回图片路径:group1/M00/00/00/rBEAA2Kf_quAOgQdAAAYdM_Mb3k255.png

我们在浏览器中通过:http://192.168.197.128:8888/group1/M00/00/00/rBEAA2Kf_quAOgQdAAAYdM_Mb3k255.png 访问,效果如下:

8888端口我们之前在启动虚拟机的时候暴露给了宿主机,这个8888端口是nginx在监听,我们可以看配置文件/usr/local/nginx/conf/nginx.conf:

通过delron/fastdfs镜像,整体操作下来,最多需要三个命令:

无需更改任何配置,启动即成功。 

加载全部内容

相关教程
猜你喜欢
用户评论