当前位置: 首页 > news >正文

Docker fastdfs 【单机】

Docker fastdfs 【单机】

  • 系统环境
  • fastdfs 搭建
    • 1.拉取fastdfs 镜像
    • 2.创建调度服务(tracker)容器
    • 3.创建存储服务(storage)容器
    • 4.查看端口监听
    • 5.服务监听测试
    • 6.上传测试

系统环境

  1. centos7.2
  2. docker 1.13.1
  3. 宿主机ip:192.168.99.149

fastdfs 搭建

1.拉取fastdfs 镜像

docker pull season/fastdfs

2.创建调度服务(tracker)容器

docker run -ti -d --privileged=true --name tracker -v ~/tracker_data:/fastdfs/tracker/data --net=host season/fastdfs tracker

结果:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                     NAMES
3e4d1b4ac1f9        season/fastdfs      "/entrypoint.sh tr..."   40 seconds ago      Up 39 seconds                                 tracker
  • 默认端口:22122

3.创建存储服务(storage)容器

注意修改ip地址

docker run -ti -d --privileged=true --name storage -v ~/storage_data:/fastdfs/storage/data -v ~/store_path:/fastdfs/store_path --net=host -e TRACKER_SERVER=192.168.99.149:22122 season/fastdfs storage

结果:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                     NAMES
ffdec95d9452        season/fastdfs      "/entrypoint.sh st..."   15 seconds ago      Up 15 seconds                                 storage

4.查看端口监听

netstat -unltp | grep fdfs

结果:

tcp        0      0 0.0.0.0:22122           0.0.0.0:*               LISTEN      14535/fdfs_trackerd 
tcp        0      0 0.0.0.0:23000           0.0.0.0:*               LISTEN      14909/fdfs_storaged

5.服务监听测试

docker exec -it storage /bin/bash -c '/usr/local/bin/fdfs_monitor /etc/fdfs/storage.conf'

结果:

...此处省略
tracker server is 192.168.99.149:22122

group count: 1

Group 1:
group name = group1
....此处省略

	Storage 1:
		id = 192.168.99.149
		ip_addr = 192.168.99.149  ACTIVE
		....此处省略

6.上传测试

  1. 创建测试文件 abc.txt
echo 'love'>>abc.txt
  1. 将abc.txt 复制到 tracker 容器中
docker cp abc.txt  tracker:/
  1. 创建 test.conf(客户端配置文件)
vim test.conf

内容:(注意修改ip地址)

connect_timeout=30
network_timeout=60
base_path=/home
tracker_server=192.168.99.149:22122
log_level=info
use_connection_pool = false
connection_pool_max_idle_time = 3600
load_fdfs_parameters_from_tracker=false
use_storage_id = false
storage_ids_filename = storage_ids.conf
http.tracker_server_port=80
  1. 将test.conf 复制到 trakcer 容器中
docker cp test.conf  tracker:/
  1. 上传abc.txt文件
docker exec -it tracker /bin/bash -c '/usr/local/bin/fdfs_upload_file /test.conf /abc.txt'

结果:

group1/M00/00/00/wKhjlVvx5gSAAYGJAAAABYOEB2g289.txt
  1. 查看上传结果
cat store_path/data/00/00/wKhjlVvx5gSAAYGJAAAABYOEB2g289.txt 

结果:

love

搭建并测试完成end

相关文章:

  • windows下java工程运行(非jar)
  • win 快速安装mysql5.7
  • jpa @query 动态表名
  • springboot 长连接 keepalive 记录
  • ping 命令打印日志
  • .bat批处理出现中文乱码的情况
  • dos命令把ping内容保存在文本中
  • 解决git:'instaweb' 不是一个 git 命令。参见 'git --help'。问题
  • yii gridview 根据字段值不同 显示不同样式及文字
  • python is 和 “==”的区别
  • mysql无符号和有符号的区别
  • mysql 偏移量 OFFSET和 limit的区分
  • mysql ERROR 1222 (21000): The used SELECT statements have a different number of columns
  • mysql order by 排序语法
  • mysql GROUP BY
  • ES6系列(二)变量的解构赋值
  • ES6系统学习----从Apollo Client看解构赋值
  • github指令
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • Java知识点总结(JavaIO-打印流)
  • mysql常用命令汇总
  • Shadow DOM 内部构造及如何构建独立组件
  • SpiderData 2019年2月23日 DApp数据排行榜
  • vue--为什么data属性必须是一个函数
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 使用putty远程连接linux
  • 思维导图—你不知道的JavaScript中卷
  • 我是如何设计 Upload 上传组件的
  • 运行时添加log4j2的appender
  • 在electron中实现跨域请求,无需更改服务器端设置
  • raise 与 raise ... from 的区别
  • 关于Android全面屏虚拟导航栏的适配总结
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • 曾刷新两项世界纪录,腾讯优图人脸检测算法 DSFD 正式开源 ...
  • 整理一些计算机基础知识!
  • $ is not function   和JQUERY 命名 冲突的解说 Jquer问题 (
  • (¥1011)-(一千零一拾一元整)输出
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (附源码)计算机毕业设计高校学生选课系统
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (转)scrum常见工具列表
  • .helper勒索病毒的最新威胁:如何恢复您的数据?
  • .Net core 6.0 升8.0
  • .NET Core 项目指定SDK版本
  • .NET和.COM和.CN域名区别
  • .NET开发不可不知、不可不用的辅助类(一)
  • .NET企业级应用架构设计系列之应用服务器
  • @Autowired 与@Resource的区别
  • [android] 练习PopupWindow实现对话框
  • [ASP.NET MVC]如何定制Numeric属性/字段验证消息
  • [AX]AX2012 SSRS报表Drill through action
  • [C#] 如何调用Python脚本程序
  • [EULAR文摘] 脊柱放射学持续进展是否显著影响关节功能
  • [GYCTF2020]Ez_Express