docker打包fastdfs镜像,搭建fastdfs集群方案

文件下载

文件已经准备好,传送门:https://download.csdn.net/download/shan165310175/11360416

下载文件,解压:

Dockerfile内容:

FROM alpine

MAINTAINER 165310175@qq.com

ADD fastdfs.tar.gz /usr/local/src/

RUN cd /usr/local/src && sh build.sh

VOLUME /data/fdfs

EXPOSE 22122
EXPOSE 8888
EXPOSE 80

ENTRYPOINT ["sh","/start.sh"]

fastdfs.tar.gz里面已经封装好文件了

build.sh内容:

#!/bin/sh

mkdir -p /data/fdfs /var/log/nginx

# 主要是编译nginx模块
apk add --no-cache gcc g++ make automake autoconf libtool pcre pcre-dev zlib zlib-dev openssl-dev

cd /usr/local/src/libfastcommon && sh make.sh clean && sh make.sh && sh make.sh install

cd /usr/local/src/fastdfs && sh make.sh clean && sh make.sh && sh make.sh install

cd /usr/local/src/nginx && ./configure --add-module=/usr/local/src/fastdfs-nginx-module/src/ && make && make install

ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/nginx

rm -fr /etc/fdfs

mkdir -p /etc/fdfs

cp /usr/local/src/config/* /etc/fdfs/ -R

rm /usr/local/nginx/conf/nginx.conf -f

mv /etc/fdfs/bak/nginx.conf.bak /usr/local/nginx/conf/nginx.conf

mv /usr/local/src/start-tracker.sh /usr/local/bin/
mv /usr/local/src/start-storage.sh /usr/local/bin/
mv /usr/local/src/start.sh /start.sh

rm -fr /usr/local/src

apk del gcc
apk del g++

 

 

 

安装步骤

打包镜像:

cd build-fastdfs

docker build -t fdfs .

使用docker-compose.yml启动测试:

docker-compose up -d

# 注意,由于有依赖关系,可能启动不成功,可以使用单独按顺序启动的方式启动。

 

文件目录为: /data/fdfs

具体稍微看看下载的文件中的配置内容哦。

 

docker-compose.yml文件说明:

version: "3"
services:
    tracker01:
            image: fdfs
            network_mode: fdfs_net
            command: tracker
            container_name: tracker01
            restart: on-failure

    tracker02:
            image: fdfs
            network_mode: fdfs_net
            command: tracker
            container_name: tracker02
            restart: on-failure

    tracker03:
            image: fdfs
            network_mode: fdfs_net
            command: tracker
            container_name: tracker03
            restart: on-failure

    storage01:
            image: fdfs
            network_mode: fdfs_net
            container_name: storage01
            environment:
                    - TRACKER=tracker01,tracker02,tracker03
            depends_on:
                    - tracker01
                    - tracker02
                    - tracker03
            links:
                    - tracker01:tracker01
                    - tracker02:tracker02
                    - tracker03:tracker03
            command: storage
            restart: on-failure

    storage02:
            image: fdfs
            network_mode: fdfs_net
            container_name: storage02
            environment: 
                    - TRACKER=tracker01,tracker02,tracker03
            depends_on:
                    - storage01
            links:
                    - tracker01:tracker01
                    - tracker02:tracker02
                    - tracker03:tracker03
            command: storage
            restart: on-failure

    storage03:
            image: fdfs
            network_mode: fdfs_net
            container_name: storage03
            environment: 
                    - TRACKER=tracker01,tracker02,tracker03
            depends_on:
                    - storage02 
            links:
                    - tracker01:tracker01
                    - tracker02:tracker02
                    - tracker03:tracker03
            command: storage
            restart: on-failure

配置稍微比较久了,这里说明下配置:

具体请看

里面的相关脚本吧。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值