跳到主要内容

File 单节点

服务器IP主机角色
192.168.10.16File Server

初始化 Swarm 环境

  1. 在 File Server 上执行 swarm 初始化命令

    docker swarm init

部署 File

  1. 下载镜像

    docker pull registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-file:1.7.0
  2. 创建数据目录

    mkdir -p /data/file/volume/{cache,data,fetchtmp,multitmp,tmp}
  3. 创建配置文件存放目录

    mkdir -p /usr/local/MDPrivateDeployment/clusterMode
  4. 创建配置文件 file.yaml

    cat > /usr/local/MDPrivateDeployment/clusterMode/file.yaml <<EOF
    version: '3.3'
    services:
    app:
    image: registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-file:1.7.0
    volumes:
    - /usr/share/zoneinfo/Etc/GMT-8:/etc/localtime
    - /data/file/volume:/data/storage
    ports:
    - "9000:9000"
    environment:
    MINIO_ACCESS_KEY: storage
    MINIO_SECRET_KEY: 123456
    ENV_MINGDAO_PROTO: "http"
    ENV_MINGDAO_HOST: "hap.domain.com"
    ENV_MINGDAO_PORT: "80"
    ENV_FILE_CACHE: "redis://:123456@192.168.10.13:6379"
    ENV_FILECACHE_EXPIRE: "false"
    command: ["./main", "server", "/data/storage/data"]
    EOF
    • redis 连接信息在实际部署中注意替换为实际的密码与IP
  5. 创建启动脚本

    mkdir -p /usr/local/MDPrivateDeployment/clusterMode
    cat > /usr/local/MDPrivateDeployment/start.sh <<EOF
    docker stack deploy -c /usr/local/MDPrivateDeployment/clusterMode/file.yaml file
    EOF
    chmod +x /usr/local/MDPrivateDeployment/start.sh
  6. 启动服务

    bash /usr/local/MDPrivateDeployment/start.sh
  7. 加入开机自启动

    echo "bash /usr/local/MDPrivateDeployment/start.sh" >> /etc/rc.local
    chmod +x /etc/rc.local