zoukankan      html  css  js  c++  java
  • 使用docker-compose安装FastDfs文件服务器

    docker-compose.yml

    version: '2'
    services:
        fastdfs-tracker:
            hostname: fastdfs-tracker
            container_name: fastdfs-tracker
            image: season/fastdfs:1.2
            network_mode: "host"
            command: tracker
            volumes:
              - ./tracker_data:/fastdfs/tracker/data
        fastdfs-storage:
            hostname: fastdfs-storage
            container_name: fastdfs-storage
            image: season/fastdfs:1.2
            network_mode: "host"
            volumes:
              - ./storage_data:/fastdfs/storage/data
              - ./store_path:/fastdfs/store_path
            environment:
              - TRACKER_SERVER=xxx.xxx.xxx.xxx:22122
            command: storage
            depends_on:
              - fastdfs-tracker
        fastdfs-nginx:
            hostname: fastdfs-nginx
            container_name: fastdfs-nginx
            image: season/fastdfs:1.2
            network_mode: "host"
            volumes:
              - ./nginx.conf:/etc/nginx/conf/nginx.conf
              - ./store_path:/fastdfs/store_path
            environment:
              - TRACKER_SERVER=xxx.xxx.xxx.xxx:22122
            command: nginx
    

    需要注意:
    network_mode 必须是host, 原因是当上传文件时,tracker会把storage的IP和端口发给client,如果是bridge模式,则发送的是内网IP,client无法访问到。
    image采用season/fastdfs:1.2 不要用lastest, 因为lastest不包含nginx服务,其他fasdfs镜像均没有season的精简。

    nginx.conf(用于提供http的方式下载文件)

    listen 7003是ngingx服务访问端口,可自行切换

    #user  nobody;
    worker_processes  1;
     
    #error_log  logs/error.log;
    #error_log  logs/error.log  notice;
    #error_log  logs/error.log  info;
     
    #pid        logs/nginx.pid;
     
     
    events {
        worker_connections  1024;
    }
     
     
    http {
        include       mime.types;
        default_type  application/octet-stream;
     
        #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
        #                  '$status $body_bytes_sent "$http_referer" '
        #                  '"$http_user_agent" "$http_x_forwarded_for"';
     
        #access_log  logs/access.log  main;
     
        sendfile        on;
        #tcp_nopush     on;
     
        #keepalive_timeout  0;
        keepalive_timeout  65;
     
        #gzip  on;
     
        server {
            listen       7003;
            server_name  localhost;
     
            #charset koi8-r;
     
            #access_log  logs/host.access.log  main;
     
            location /group1/M00 {
                root /fastdfs/storage/data;
                ngx_fastdfs_module;
            }
     
            #error_page  404              /404.html;
     
            # redirect server error pages to the static page /50x.html
            #
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
     }
    }
    
  • 相关阅读:
    利用sqlmap进行mysql提权的小方法(win与liunx通用)
    冰蝎绕过阿里云盾和天眼监控的新方法
    关于渗透的小技巧整理
    入侵者已经拿到了主机的管理员权限,请你列举几种留后门的方法:(windows和LINUX系统均可)
    Mysql root账号general_log_file方法获取webshell
    tomcat put上传漏洞批量利用程序v1.1
    ios10.3.3快速越狱指南
    Android的虫洞漏洞挖掘方法研究
    【原创】TransHost远控程序分析
    【转载】微信数据库解密算法
  • 原文地址:https://www.cnblogs.com/yloved/p/12649569.html
Copyright © 2011-2022 走看看