docker-compose部署文件管理服务FASTDFS

目录结构

├─docker-compose.yaml    # 运行文件
└───fastdfs # fastdfs(文件管理服务)
    ├─storage_data     # 文件
    │  └─test.jpg   # 可进容器中测试是否成功
    ├─tracker_data     # 
    └─nginx.conf     # nginx配置文件访问端口等信息

 docker-compose.yaml配置

version: '3'
services:
  # tracker容器: 跟踪服务器,起到调度的作用
  fastdfs-tracker:
    image: registry.cn-hangzhou.aliyuncs.com/zhengqing/fastdfs:latest        # 原镜像`delron/fastdfs`
    container_name: tracker
    hostname: fastdfs-tracker
    command: tracker
    environment:
      - TRACKER_SERVER=You_Server_Ip:22122 # TODO 修改为自己的ip地址 起到固定ip作用, 反之启动容器后会存在虚拟ip
      - GROUP_NAME=group1
    volumes:
      - ./fastdfs/tracker_data:/var/fdfs
    ports:
      - "22122:22122"

  # storage容器:存储服务器,提供容量和备份服务
  fastdfs-storage:
    image: registry.cn-hangzhou.aliyuncs.com/zhengqing/fastdfs:latest       # 原镜像`delron/fastdfs`
    container_name: storage
    volumes:
      - ./fastdfs/nginx.conf:/usr/local/nginx/conf/nginx.conf # Nginx配置文件
      #      - ./fastdfs/storage.conf:/etc/fdfs/storage.conf # http访问配置
      - ./fastdfs/storage_data:/var/fdfs # 文件数据
    environment:
      - TRACKER_SERVER=You_Server_Ip:22122 # TODO 修改为自己的ip地址
      - GROUP_NAME=group1
    command: storage
    depends_on:
      - fastdfs-tracker
    ports:
      - "8888:8888"
      - "23000:23000"


nginx.conf代码

worker_processes  1;

events {
  worker_connections  1024;
}

http {
  include mime.types;
  default_type  application/octet-stream;

  sendfile        on;

  keepalive_timeout  65;

  server {
    listen       8888;
    server_name  localhost;
    location ~/group[0-9]/ {
      ngx_fastdfs_module;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
      root html;
    }
  }

}

其中根据目录结构创建 文件夹, 对于storage_data中放置一个文件, 这里我放的是图片, 在服务启动后, 将在容器中测试是否上传图片成功使用

***开启外部访问端口, 23000, 22122, 8888***


# 运行服务 -d为后台
docker-compose up -d

# 进入storage容器, 根据docker-compose.yaml启动镜像名称
docker exec -it storage bash

# 进入`/var/fdfs`目录
cd /var/fdfs

# 执行如下命令,会返回在storage存储文件的路径信息,然后拼接上ip地址即可测试访问
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf test.jpg

# 执行成功后, 返回示例
group1/M00/00/00/rBEAAl8aYsuABe4wAAhfG6Hv0Jw357.jpg

# 访问:
http://ip:8888/group1/M00/00/00/rBEAAl8aYsuABe4wAAhfG6Hv0Jw357.jpg

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值