最近在开发一个文件服务,用于公司内容各应用的文件保存和查询获取。

开发环境:windows10+.NET Core7.0+Mysql   发布环境 :Liunx+Docker

实现功能:文件服务提供接口上传文件和下载文件,服务用于内网访问。
实现中遇到的问题:由于文件保存是用的系统自带文件服务。而部署环境是Liunx+Docker,Docker是文件是隔离的,所以在使用docker部署的应用中,正常情况下只能访问docker内的文件,所以保存的文件夹也是在docker应用内,但是由于文件比较多,而docker部署的文件夹空间有限,所以需要将文件保存到docker外的文件夹内。

于是将保存路径改为绝对路径,但是发布运行发现找不到文件夹,但是文件是成功保存到服务器上了,通过find命令查找文件夹,命令如下:

find / -name "FileBucket" 

-name是指定按文件名查找,”FileBucket"是文件夹名称

找到如下内容:

find: ‘/proc/22841’: 没有那个文件或目录
find: ‘/proc/22849’: 没有那个文件或目录
find: ‘/proc/22856’: 没有那个文件或目录
find: ‘/proc/22858’: 没有那个文件或目录
/var/lib/docker/overlay2/8ee6db6db05756d9884c8fd80574cc48400243c64a5fa57dbdcd896251edcbc1/diff/FileBucket
/var/lib/docker/overlay2/8ee6db6db05756d9884c8fd80574cc48400243c64a5fa57dbdcd896251edcbc1/merged/FileBucket
/FileBucket

在/var/lib/docker/overlay2/8ee6db6db05756d9884c8fd80574cc48400243c64a5fa57dbdcd896251edcbc1/diff/FileBucket文件夹中找到了上传的文件,文件还在保存在docker环境下面了,没有达到我要保存到docker环境外的目的。

于是百度了一下,找到了一个方式,就是在发布docker的时候将要保存的文件夹外挂到docker上面,命令如下:     

docker run -d -p 8030:80 --name aveplugins_1 --restart=always -e TZ=Asia/Shanghai -d -v /home/AvePlugins1/back:/app -v /FileStorage:/app/FileStorage aveplugins:1.0  

其中-v 是指定外挂的文件夹,-v 后面是要外挂的文件夹  :后面的docker内使用的文件夹 -name 是指定docker容器名称

发布后,将文件保存的位置配置为/FileStorage/即可。

.NETCore文件上传将文件保存到docker容器以外的文件夹的更多相关文章

  1. HTML5文件上传器,纯脚本无插件的客户端文件上传器---Uploader 文件上传器类

    概述 客户端完全基于JavaScript的 浏览器文件上传器,不需要任何浏览器插件,但需要和jQuery框架协同工作,支持超大文件上传,其算法是将一个超大文件切片成N个数据块依次提交给服务 端处理,由 ...

  2. php文件上传与下载(附封装好的函数文件)

    单文件上传前端页面 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  3. servlet文件上传2——复合表单提交(数据获取和文件上传)

    上传文件时表单enctype属性必须要更改为<enctype='multipart/form-data'>:采用post提交表单,元素需要有name属性: 利用第三方jar包(common ...

  4. [sharepoint]rest api文档库文件上传,下载,拷贝,剪切,删除文件,创建文件夹,修改文件夹属性,删除文件夹,获取文档列表

    写在前面 最近对文档库的知识点进行了整理,也就有了这篇文章,当时查找这些接口,并用在实践中,确实废了一些功夫,也为了让更多的人走更少的弯路. 系列文章 sharepoint环境安装过程中几点需要注意的 ...

  5. WebLogic 任意文件上传 远程代码执行漏洞 (CVE-2018-2894)------->>>任意文件上传检测POC

    前言: Oracle官方发布了7月份的关键补丁更新CPU(Critical Patch Update),其中针对可造成远程代码执行的高危漏洞 CVE-2018-2894 进行修复: http://ww ...

  6. bootstrap File Input 多文件上传插件使用记录(二)删除原文件

    在上一篇文章中,主要介绍了file input插件的初始化和多文件同步上传到服务器的相关配置等.这篇主要介绍file input插件的编辑等. 使用场景: 在后台管理框架中,一条数据中包含不固定的多张 ...

  7. layui文件上传中如何先判断后再弹出文件选择框

    前言:layui中的上传,如何在点击上传按钮前阻止file的默认打开文件选择框呢?我想点击后先判断下,如果判断结果不符合,就直接弹出提示框,而不是文件选择框,判断符合才进行文件选择.但是在layui的 ...

  8. play-with-docker搭配ffsend完成文件上传及下载(解决从docker hub拉取镜像慢问题)

    由于众所周知的原因,大家有的时候pull docker hub上的镜像是很困难的,下载到99%就这么不动了也是很正常的事情 这个时候以下步骤是100%可以解决问题的: 1.找一台国外的服务器安装doc ...

  9. JavaWeb 文件上传下载

    1. 文件上传下载概述 1.1. 什么是文件上传下载 所谓文件上传下载就是将本地文件上传到服务器端,从服务器端下载文件到本地的过程.例如目前网站需要上传头像.上传下载图片或网盘等功能都是利用文件上传下 ...

  10. 转载:JavaWeb 文件上传下载

    转自:https://www.cnblogs.com/aaron911/p/7797877.html 1. 文件上传下载概述 1.1. 什么是文件上传下载 所谓文件上传下载就是将本地文件上传到服务器端 ...

随机推荐

  1. 采坑 - 字符串的 "" 与 pd.isnull()

    主要是记录一个采坑的过程. 当字符串 的 " " 和 pandas 中的 " " , NaN不是一个概念 . 需求 一个小伙伴要用 pandas 来处理一个, ...

  2. Python基础 - 多进程(下)

    上篇主要对多任务从生活上来认识, 同时引入对 进程 的认识, 即操作系统资源分配的基本单元. 然后通过对 并发, 并行 概念的认识, 去理解 任务调度. 然后用内置的 multiprocessing ...

  3. CUDA简单介绍

    并行计算 并行计算(parallel computing)是一种计算形式,它将大的问题分解为许多可以并行的小问题. 并行计算分为:任务并行(task parallel)和数据并行(data paral ...

  4. pythonnet VS csnake:穿针引线,中西合璧——最强Python & .NET互操作对决

    Hello,亲爱的小伙伴们!你是否曾经在深夜里,为了自动化点外卖.筛机票.抓网页数据焦头烂额?有没有幻想过哪天能出个"贴心AI管家",一键点菜.搞定事务.自动操作网页,比你还懂你? ...

  5. 代码随想录第二天|数组part02

    开始时间10:30 209.长度最小的子数组 题目建议: 本题关键在于理解滑动窗口,这个滑动窗口看文字讲解 还挺难理解的,建议大家先看视频讲解. 拓展题目可以先不做. 题目链接:https://lee ...

  6. Kubernetes控制器-Deployment

    Kubernetes控制器-Deployment 我们已经知道ReplicaSet控制器是用来维护集群中运行的Pod数量的,但是往往在实际操作时候,我们反而不去直接使用RS,而是使用更上层的控制器,比 ...

  7. 一些好用的IDEA插件

    彩虹括号插件 Rainbow Brackets 可以让成对的括号展示相同颜色 Free Mybatis Tool插件 去看我另一篇文章:https://www.cnblogs.com/maomao77 ...

  8. 详解鸿蒙Next仓颉开发语言中的全屏模式

    大家好,今天跟大家分享一下仓颉开发语言中的全屏模式. 和ArkTS一样,仓颉的新建项目默认是非全屏模式的,如果你的应用颜色比较丰富,就会发现屏幕上方和底部的留白,这是应用自动避让了屏幕上方摄像头区域和 ...

  9. 让Smarty模板生成html文件

    用Smarty模板生成html文件,其实就是在 display() 的同时,增加了 ob_start().b_get_contents() 和 fwrite() 函数. 具体实现方法,请看下面两个文件 ...

  10. DotTrace系列:7. 诊断 托管和非托管 内存暴涨

    一:背景 1. 讲故事 分析托管和非托管内存暴涨,很多人潜意识里都会想到抓dump上windbg分析,但我说可以用dottrace同样分析出来,是不是听起来有点让人惊讶,哈哈,其实很正常,它是另辟蹊径 ...