采用Docker集成jquery-file-upload组件到WEB应用

栏目: jQuery · 发布时间: 6年前

内容简介:采用Docker集成jquery-file-upload组件到WEB应用

jQuery-File-Upload 组件是一个非常好用的文件上传组件,有很多友好的特性:

  • 支持文件多选
  • 拖拽上传
  • 上传进度条
  • 取消上传
  • 图片、音视频预览
  • 纯JS和HTML5代码,不需额外安装插件

服务器端提供了三种部署方式: gae-go、gae-python和php,前两种基于gae,在国内基本被墙了,肯定用不了。php的部署用官方提供的部署方式运行不起来,从dockerhub上找到了一个可用的 docker 镜像: yaasita/docker-jquery-file-upload ,日文?&!OMG。

  • 运行起来:
    $ docker run -d -p 22 -p 8033:80 yaasita/docker-jquery-file-upload /usr/bin/supervisord
    

跟官方给出的Demo是一样的,不过我们需要做下汉化。

采用Docker集成jquery-file-upload组件到WEB应用

2,集成

效果如下:

采用Docker集成jquery-file-upload组件到WEB应用

每个Tab标签对应的是一个地址。

3,WEB前端

html调用modal,modal部分如下,通过3个iframe,请求到服务器端的文件上传接口。

<!-- 导入modal -->
<divclass="modal fade"id="importModal"tabindex="-1"role="dialog"aria-labelledby="myModalLabel"aria-hidden="true">
<divstyle="margin-top:10%;">
<divclass="modal-dialog"style="min-width:600px;width:60%;">
<divclass="modal-content">
<divclass="modal-header">
<buttontype="button"class="close"data-dismiss="modal"aria-hidden="true">
×
</button>
<h2class="modal-title"id="myModalLabel"style="font-size:18px;">
数据导入
</h2>
</div>
<divclass="modal-body"id="upLoad">
<ulid="labUl"class="labelUl"style="float:none;">
<liid="basicInfotab"class="Active2"><span>基本信息</span></li>
<liid="netDatatab"><span>净值数据</span></li>
<liid="positionDatatab"><span>持仓数据</span></li>
</ul>
<divid="basicInfoDiv"class="uploadDiv">
<iframescrolling="yes"src="http://localhost:8010/"class="fileUpload">
</iframe>
</div>
<divid="netDataDiv"class="uploadDiv"style="display:none;">
<iframescrolling="yes"src="http://localhost:8011/"class="fileUpload">
</iframe>
</div>
<divid="positionDataDiv"class="uploadDiv"style="display:none;">
<iframescrolling="yes"src="http://localhost:8012/"class="fileUpload">
</iframe>
</div>
</div>
<divclass="modal-footer">
<buttontype="button"class="easy1Btn"id="buttonImportAndCalc">导入&计算
</button>
<!-- <button type="button" id="fileUpload" class="easy2Btn">上传
</button> -->
<buttontype="button"class="easy1Btn"data-dismiss="modal">关闭
</button>
</div>
<divid="layer"></div>
<divid="onLoad"></div>
</div><!-- /.modal-content -->
</div><!-- /.modal -->

4,服务器端配置

4.1,Dockerfile文件

位置: ./FileUpload/Dockerfile

# Version 0.1

# 基础镜像
FROM yaasita/docker-jquery-file-upload

# 维护者信息
MAINTAINER cbbing@163.com

# 镜像命令
COPYindex.html /var/www/upload/index.html

CMD["/usr/bin/supervisord"]

其中,Dockerfile中的 index.html 文件,是为了汉化docker镜像中的index文件。

4.2,docker-compose.yml

docker-compose中配置了3个容器,对外提供文件上传接口,分别对应服务器的info, nav, pos目录。

version: '2'
services:

  fileupload1:
    build: ./FileUpload
    ports:
      - 8010:80
      - 22
    volumes:
      - /usr/local/upload/info:/var/www/upload/server/php/files
    restart: "always"

  fileupload2:
    build: ./FileUpload
    ports:
      - 8011:80
      - 22
    volumes:
      - /usr/local/upload/nav:/var/www/upload/server/php/files 
    restart: "always"

  fileupload3:
    build: ./FileUpload
    ports:
      - 8012:80
      - 22
    volumes:
      - /usr/local/upload/pos:/var/www/upload/server/php/files
    restart: "always"

目录结构:

- docker-compose.yml
- FileUpload/
---- Dockerfile
---- index.html

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

我的第一本编程书

我的第一本编程书

[日]平山尚 / 张沈宇 / 人民邮电出版社 / 2016-7 / 79.00元

写这本书之前,作者一直在摸索一种最有利于入门者学编程的方法,并应用到教学当中。经过两年的教学实践,他确信他的方法是有效的,于是便有了这本书。这本书面向的是完全没有接触过编程的读者。作者将门槛设置得非常低,读者不需要懂得变量、函数这些名词(这些名词在书中也不会出现),不需要会英语,完全不需要查阅其他书籍,只需要小学算术水平即可。这本书给初学者非常平缓的学习曲线,有利于为之后的进阶学习打下坚实的基础。一起来看看 《我的第一本编程书》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

URL 编码/解码
URL 编码/解码

URL 编码/解码

MD5 加密
MD5 加密

MD5 加密工具