docker安装fastdfs单机版
docker search fastdfs
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/season/fastdfs FastDFS
docker.io docker.io/luhuiguo/fastdfs FastDFS is an open source high performance... [OK]
docker.io docker.io/morunchang/fastdfs A FastDFS image
docker.io docker.io/ygqygq2/fastdfs-nginx 整合了nginx的fastdfs [OK]
docker.io docker.io/lionheart/fastdfs-tracker just have a try on autobuilded -_-# [OK]
docker.io docker.io/imlzw/fastdfs-tracker fastdfs的tracker服务 [OK]
docker.io docker.io/qbanxiaoli/fastdfs FastDFS单机版 [OK]
docker.io docker.io/appcrash/fastdfs_nginx fastdfs with nginx
docker.io docker.io/delron/fastdfs
docker.io docker.io/evan1120/fastdfs_storage The fastdfs storage image [OK]
docker.io docker.io/evan1120/fastdfs_tracker The fastdfs tracker docker image, only con... [OK]
docker.io docker.io/imlzw/fastdfs-storage fastdfs的storage服务 [OK]
docker.io docker.io/imlzw/fastdfs-storage-dht fastdfs的storage服务,并且集成了fastdht的服务,实现文件排重 [OK]
docker.io docker.io/john123951/fastdfs_storage fastdfs storage [OK]
docker.io docker.io/lionheart/fastdfs-storage 更加规范的Dockerfile,能够自动构建了。 [OK]
docker.io docker.io/lionheart/fastdfs_storage the fastdfs file system's storage node 1
docker.io docker.io/lionheart/fastdfs_tracker fastdfs file system‘s tracker node
docker.io docker.io/ecarpo/fastdfs-storage
docker.io docker.io/john123951/fastdfs_tracker fastdfs tracker [OK]
docker.io docker.io/manuku/fastdfs-fastdht fastdfs fastdht [OK]
docker.io docker.io/manuku/fastdfs-storage-dht fastdfs storage dht [OK]
docker.io docker.io/manuku/fastdfs-storage-proxy fastdfs storage proxy [OK]
docker.io docker.io/manuku/fastdfs-tracker fastdfs tracker [OK]
docker.io docker.io/mypjb/fastdfs this is a fastdfs docker project [OK]
docker.io docker.io/tsl0922/fastdfs FastDFS is an open source high performance... [OK]
2.下载镜像文件
docker pull morunchang/fastdfs
3.安装tracker跟踪器容器
docker run -d --name tracker --restart=always --net=host morunchang/fastdfs sh tracker.sh
tracker容器使用host网络,docker容器中的几种网络模式,这里就不介绍了,后面有时间进行补充。
4.进入tracker容器
docker exec -it tracker /bin/bash
修改文件 nginx.conf
vi /etc/nginx/conf/nginx.conf
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 ;
keepalive_timeout ; #gzip on; server {
listen ;
server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / {
root html;
index index.html index.htm;
} location ~ /M00 {
root /data/fast_data/data;
ngx_fastdfs_module;
...................
这里是nginx监听tracker的端口号,即tracker的访问端口号,不过,需要直接访问tracker么?
修改文件client.conf
vi /etc/fdfs/client.conf
.
. # the base path to store log files
base_path=/data/fast_data # tracker_server can ocur more than once, and tracker_server format is
# "host:port", host can be hostname or ip address
tracker_server=x.x.x.x:
#这里的这个IP是你本地/服务器的ip,端口号tracker的端口号,你需要自己指定,但是需要跟tracker.conf文件中的端口号一致。
# specify storage ids filename, can use relative or absolute path
# same as tracker.conf
# valid only when load_fdfs_parameters_from_tracker is false
# since V4.
storage_ids_filename = storage_ids.conf #HTTP settings
http.tracker_server_port= #use "#include" directive to include HTTP other settiongs
##include http.conf
这里的端口号是tracker的访问端口号,和上面的22122不是一个。
修改文件tracker.conf
vi /etc/fdfs/tracker.conf
......
disabled=false # bind an address of this host
# empty for bind all addresses of this host
bind_addr= # the tracker server port
port=
#这个端口号是tracker的端口号。
# connect timeout in seconds
# default value is 30s
connect_timeout= connection_pool_max_idle_time = # HTTP port on this tracker server
http.server_port=
这个是tracker的监听端口号,http访问的端口号。好像该不该都无所谓
# check storage HTTP server alive interval seconds
# <= for never check
# default value is
http.check_alive_interval=
5.退出容器
6.安装storage储存器容器
现在/home下面创建文件夹
[root@ ~]# mkdir -p /home/docker/fastdfs/storage/
docker run -d --name storage --net=host --restart=always -e TRACKER_IP=189.215.159.153: -v /home/docker/fastdfs/storage:/data/fast_data -e GROUP_NAME=group1 morunchang/fastdfs sh storage.sh
#IP建议用公网ip,私网的ip网络进入不了
注意:这里的端口号是tracker容器的ip和端口号,不是tracker的http访问的端口号。
进入容器
docker exec -it storage /bin/bash
修改文件nginx.conf
vi /etc/nginx/conf/nginx.conf
....
... 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 ;
keepalive_timeout ; #gzip on; server {
listen ;
#######支持https###########
#listen ssl;
#server_name xx.xxxxx.com;
#ssl on;
#ssl_certificate /etc/nginx/cert/.pem; #必须得先把这两个证书准备好
#ssl_certificate_key /etc/nginx/cert/.key;
#ssl_session_timeout 5m;
#ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
#ssl_protocols TLSv1 TLSv1. TLSv1.;
#ssl_prefer_server_ciphers on;
#######支持https########### #这里是storage容器的监听端口号。
#charset koi8-r; #access_log logs/host.access.log main; location / {
root html;
index index.html index.htm;
}
为了支持https需要在容器里面做一下操作
apt-get update
git clone https://github.com/happyfish100/libfastcommon.git
git clone https://github.com/happyfish100/fastdfs-nginx-module.git
cd libfastcommon/
./make.sh
./make.sh install
apt-get install wget
wget http://nginx.org/download/nginx-1.13.12.tar.gz
tar -xvf nginx-1.13..tar.gz
mv nginx-1.13. nginx
cd nginx
apt-get install openssl libssl-dev
./configure --prefix=/etc/nginx --add-module=/data/fastdfs-nginx-module/src --with-http_stub_status_module --with-http_ssl_module
make
make install
/etc/nginx/sbin/nginx -v
/etc/nginx/sbin/nginx -s reload
查看是否已经监听443端口
root@:/# ss -tnpl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN *: *:*
LISTEN *: *:*
LISTEN *: *:*
LISTEN *: *:* users:(("nginx",pid=,fd=))
LISTEN *: *:*
LISTEN *: *:* users:(("fdfs_storaged",pid=,fd=))
LISTEN 127.0.0.1: *:*
LISTEN *: *:* users:(("nginx",pid=,fd=))
LISTEN 127.0.0.1: *:*
LISTEN ::: :::*
LISTEN ::: :::*
LISTEN ::: :::*
LISTEN ::: :::*
LISTEN ::: :::*
LISTEN ::: :::*
LISTEN ::: :::*
LISTEN ::: :::*
LISTEN ::: :::*
root@:/#
以上443端口已经监听,已经支持https形式
修改文件client.conf
vi /etc/fdfs/client.conf
#不再本容器测试就不用改
tracker容器的访问端口号
修改文件storage的storage.conf
vi /etc/fdfs/storage.conf
client_bind=true # the storage server port
port= # connect timeout in seconds
# default value is 30s
.
.
.
connection_pool_max_idle_time = # use the ip address of this storage server if domain_name is empty,
# else this domain name will ocur in the url redirected by the tracker server
http.domain_name= # the port of the web server on this storage server
#storage的访问端口号
#http.server_port=
http.server_port=
7.退出容器,重启tracker和storage
docker restart storage tracker
netstat -tnlp #查看监听的端口
cd /home/docker/fastdfs/storage/data///
#进入容器上传图片
[root@:/]# fdfs_test /etc/fdfs/client.conf upload xxxxx.jpg
8.报错调整ERROR - file: tracker_proto.c, line: 48, server: 10.171.22.124:22122, response status 2 != 0
排查思路:
在tracker上使用fdfs_monitor /etc/fdfs/client.conf 命令查看storage的状态是offline
fdfs_monitor /etc/fdfs/client.conf delete group1 storage的IP地址。 #先在tracker上删除storage的信息。
rm -rf /data/fastdfs/data #删除storage的数据目录。
service fdfs_storaged restart #重启storage
在tracker上再次使用fdfs_monitor查看storage的状态,显示active。上传图片,正常了。
docker安装fastdfs单机版的更多相关文章
- docker安装fastdfs与java客户端测试
一.docker 安装FastDFS 1.拉取镜像 docker pull morunchang/fastdfs 2.创建并启动tracker容器 docker run -d --name=track ...
- docker安装fastdfs碰到storage的IP地址映射宿主地址问题
一.概述 最近公司准备全面实施docker部署,解决每次项目实施安装部署环境工作量大问题,mysql5.7.oracle12c很顺利,在安装fastdfs时碰到storage的IP地址映射问题.服务器 ...
- Linux 安装FastDFS<单机版>(使用Mac远程访问)
阅读本文需要先阅读安装FastDFS<准备> 一 编译环境 yum install gcc-c++ yum -y install libevent yum install -y pcre ...
- CentOS7 安装FastDFS单机版
1. 下载 FastDFS https://github.com/happyfish100/fastdfs/releases libfastcommon https://github.com/happ ...
- docker 安装 fastdfs
fastdfs 安装 //1.拉取镜像 docker pull morunchang/fastdfs //2.启动tracker docker run -d --name tracker --net= ...
- 使用Docker安装FastDFS(分布式文件系统)
1. 获取镜像 可以利用已有的FastDFS Docker镜像来运行FastDFS. 获取镜像可以通过下载 docker image pull delron/fastdfs 也可是直接使用提前下载的镜 ...
- Docker安装FastDFS
什么是FastDFS? FastDFS 是用 c 语言编写的一款开源的分布式文件系统.FastDFS 为互联网量身定制, 充分考虑了冗余备份.负载均衡.线性扩容等机制,并注重高可用.高性能等指标,使用 ...
- Docker与FastDFS的安装命令及使用
Docker特点 1)上手快 用户只需要几分钟,就可以把自己的程序“Docker 化”.Docker 依赖于“写时复制” (copy-on-write)模型,使修改应用程序也非常迅速,可以说达到“随心 ...
- Linux 安装FastDFS<准备>(使用Mac远程访问)
阅读本文需要一定的Linux基础 一 FastDFS简介 fastdfs是用c语言编写的一款开源分布式文件系统, fastdfs为互联网量身定制, 充分考虑了冗余备份, 负载均衡, 线性扩容等机制, ...
随机推荐
- SpringBatch的初步了解
一.SpringBatch是一个批处理的框架,作为一个Spring组件,提供了通过使用Spring的依赖注入来处理批处理的条件. 什么是批处理呢? 在现代企业应用当中,面对复杂的业务以及海量的数据,除 ...
- Hibernate常见面试题(转)
在Java J2EE方面进行面试时,常被问起的Hibernate面试问题,大多都是针对基于Web的企业级应用开发者的角色的.Hibernate框架在Java界的成功和高度的可接受性使得它成为了Java ...
- 跟bWAPP学WEB安全(PHP代码)--XPath注入
XML/Xpath注入 看了下,A2里面是认证与会话管理的破坏或称之为绕过,没有特别要写的,很多就是小问题,可能会将这类问题放在最后写一下.一篇博客,这里还是更多的着重在能够获取信息或者服务器权限的漏 ...
- NHibernate中Session的处理 线程不安全
NHibernate中Session是线程不安全的,而且每次数据库操作 请求创建Session时对性能有些影响.在Windows应用中可以通过 [ThreadStatic]特性很简单的就可以实现线程安 ...
- Dom捕捉事件和冒泡事件-原理与demo测试
先参考一下百度百科对冒泡事件流的解释: ----------不喜欢读文字的同学,可以直接看下面demo,传递顺序简单明了! http://baike.baidu.com/link?url=kaeJHT ...
- SSM项目实战
1. 实战才是检验学的怎么样的标准,一个小项目,运行老是出错,加上自己一贯的马虎的习惯,不严谨,就使学习之路更加的曲折了,感觉自己在这一行中比较吃力,但是自己选择了这条路,就得好好走下去,不要怀疑自 ...
- D - Game Prediction
Suppose there are M people, including you, playing a special card game. At the beginning, each playe ...
- js函数 eql,equal,equalp
function eql(obj, other) { if(stringp(obj) && stringp(other) && obj === other) retur ...
- 设备重力感应 window.DeviceOrientationEvent
设备屏幕方向与运动 https://developers.google.cn/web/fundamentals/native-hardware/device-orientation/ MDN devi ...
- MINIUI后台获取数据
1.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnc ...