【云原生之Docker实战】使用Docker部署File Manager文件管理系统

news/2024/4/26 6:21:42/文章来源:https://blog.csdn.net/jks212454/article/details/127445815

【云原生之Docker实战】使用Docker部署File Manager文件管理系统

  • 一、File Manager简介
    • 1.File Manager简介
    • 2.File Manager特点
  • 二、检查宿主机系统版本
  • 三、检查本地docker环境
    • 1.检查docker服务状态
    • 2.检查docker配置信息
    • 3.开启IPv4 forwarding
    • 4.检查Docker版本
  • 四、安装docker-compose
    • 1.下载docker-compose二进制包
    • 2.给文件增加执行权限
    • 3.检查docker-compose版本
  • 五、下载File Manager镜像
  • 六、docker-cli部署File Manager
  • 七、使用docker-compose部署File Manager
    • 1.编辑docker-compose.yaml
    • 2.创建File Manager容器
    • 3.查看容器状态
  • 八、登录File Manager
    • 1.进入File Manager首页
    • 2.进入File Manager首页
  • 九、上传文件

一、File Manager简介

1.File Manager简介

Filemanager 是一款轻量级开源文件管理系统。可用于上传,删除,预览,重命名和编辑文件。它允许创建多个用户,每个用户可以拥有自己的目录。

2.File Manager特点

  • 服务器信息查看
  • 目录树查看
  • 可对文件和目录进行复制/移动/删除/创建/重命名/编辑/查看/更改权限等操作
  • tar/zip/bzip/gzip 在线压缩/解压
  • 多文件上传
  • shell/exec 控制台操作
  • 支持 linux/windows 操作系统
  • php4/php5/apache2 兼容
  • English/Portuguese/简体中文支持

二、检查宿主机系统版本

[root@docker ~]# cat /etc/os-release 
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

三、检查本地docker环境

1.检查docker服务状态

[root@docker ~]# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)Active: active (running) since Fri 2022-10-21 13:52:55 CST; 39min agoDocs: https://docs.docker.comMain PID: 9813 (dockerd)Tasks: 22Memory: 110.5MCGroup: /system.slice/docker.service├─ 9813 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock├─13425 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 3000 -container-ip 172.20.0.2 -container-port 3...└─13453 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 3000 -container-ip 172.20.0.2 -container-port 3000Oct 21 13:52:39 docker dockerd[9813]: time="2022-10-21T13:52:39.865036098+08:00" level=info msg="ccResolverWrapper: send...le=grpc
Oct 21 13:52:39 docker dockerd[9813]: time="2022-10-21T13:52:39.865044855+08:00" level=info msg="ClientConn switching ba...le=grpc
Oct 21 13:52:41 docker dockerd[9813]: time="2022-10-21T13:52:41.471511161+08:00" level=info msg="[graphdriver] using pri...erlay2"
Oct 21 13:52:45 docker dockerd[9813]: time="2022-10-21T13:52:45.234684184+08:00" level=info msg="Loading containers: start."
Oct 21 13:52:47 docker dockerd[9813]: time="2022-10-21T13:52:47.414394139+08:00" level=info msg="Default bridge (docker0...ddress"
Oct 21 13:52:54 docker dockerd[9813]: time="2022-10-21T13:52:54.698122310+08:00" level=info msg="Loading containers: done."
Oct 21 13:52:54 docker dockerd[9813]: time="2022-10-21T13:52:54.973240663+08:00" level=info msg="Docker daemon" commit=e...0.10.18
Oct 21 13:52:54 docker dockerd[9813]: time="2022-10-21T13:52:54.973328839+08:00" level=info msg="Daemon has completed in...zation"
Oct 21 13:52:55 docker systemd[1]: Started Docker Application Container Engine.
Oct 21 13:52:55 docker dockerd[9813]: time="2022-10-21T13:52:55.682450266+08:00" level=info msg="API listen on /var/run/...r.sock"
Hint: Some lines were ellipsized, use -l to show in full.

2.检查docker配置信息

[root@docker ~]# docker info
Client:Context:    defaultDebug Mode: falsePlugins:app: Docker App (Docker Inc., v0.9.1-beta3)buildx: Docker Buildx (Docker Inc., v0.8.2-docker)compose: Docker Compose (Docker Inc., v2.6.0)scan: Docker Scan (Docker Inc., v0.17.0)Server:Containers: 2Running: 2Paused: 0Stopped: 0Images: 3Server Version: 20.10.17Storage Driver: overlay2Backing Filesystem: xfsSupports d_type: trueNative Overlay Diff: trueuserxattr: falseLogging Driver: json-fileCgroup Driver: cgroupfsCgroup Version: 1Plugins:Volume: localNetwork: bridge host ipvlan macvlan null overlayLog: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslogSwarm: inactiveRuntimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runcDefault Runtime: runcInit Binary: docker-initcontainerd version: 10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1runc version: v1.1.2-0-ga916309init version: de40ad0Security Options:seccompProfile: defaultKernel Version: 3.10.0-957.el7.x86_64Operating System: CentOS Linux 7 (Core)OSType: linuxArchitecture: x86_64CPUs: 2Total Memory: 7.62GiBName: nodeID: EIOB:6IAO:NQTR:AJBA:O6KS:SNWP:JEDK:GXBG:55FP:IOSK:WRH3:QOAUDocker Root Dir: /var/lib/dockerDebug Mode: falseRegistry: https://index.docker.io/v1/Labels:Experimental: falseInsecure Registries:127.0.0.0/8Registry Mirrors:https://sp4mg57h.mirror.aliyuncs.com/Live Restore Enabled: falseWARNING: IPv4 forwarding is disabled

3.开启IPv4 forwarding

[root@docker ~]# echo "net.ipv4.ip_forward=1" >>  /etc/sysctl.conf
[root@docker ~]# systemctl restart network
[root@docker ~]#  sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1

4.检查Docker版本

[root@docker ~]# docker -v
Docker version 20.10.17, build 100c701

四、安装docker-compose

1.下载docker-compose二进制包

 curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
[root@docker ~]#  curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose% Total    % Received % Xferd  Average Speed   Time    Time     Time  CurrentDload  Upload   Total   Spent    Left  Speed
100   423  100   423    0     0    362      0  0:00:01  0:00:01 --:--:--   362
100 16.2M  100 16.2M    0     0  8568k      0  0:00:01  0:00:01 --:--:-- 8568k

2.给文件增加执行权限

chmod +x /usr/local/bin/docker-compose 

3.检查docker-compose版本

[root@docker ~]# docker-compose version
docker-compose version 1.25.0, build 0a186604
docker-py version: 4.1.0
CPython version: 3.7.4
OpenSSL version: OpenSSL 1.1.0l  10 Sep 2019

五、下载File Manager镜像

[root@docker ~]# docker pull smokserwis/filemanager
Using default tag: latest
latest: Pulling from smokserwis/filemanager
f49cf87b52c1: Pull complete 
185616061386: Pull complete 
5fc132db2e0d: Pull complete 
00c1c323341a: Pull complete 
ff3701349211: Pull complete 
faab1d6ad70f: Pull complete 
eae8d88d75e0: Pull complete 
7fbd4c732645: Pull complete 
b2e59bdd1208: Pull complete 
dc295cd4163b: Pull complete 
f20cf94ab013: Pull complete 
2487c77e7431: Pull complete 
cb2ac2ff3a32: Pull complete 
91b8af3e62cb: Pull complete 
bed3abc70e62: Pull complete 
15834f4d9c5d: Pull complete 
4f1122fc66de: Pull complete 
60b7b339ab82: Pull complete 
9166eab89063: Pull complete 
42913d62f903: Pull complete 
Digest: sha256:43b8f2c5bfad99b5c3790f13e61f8dc2e612b2bec24a2d875e6742bd6046bb74
Status: Downloaded newer image for smokserwis/filemanager:latest
docker.io/smokserwis/filemanager:latest

六、docker-cli部署File Manager

docker run -h example.com -v /your/files:/var/www/mount -p 80:80 smokserwis/filemanager

七、使用docker-compose部署File Manager

1.编辑docker-compose.yaml

[root@docker filemanager]# cat docker-compose.yaml 
version: '3.5'
services:mariadb:image: smokserwis/filemanagerrestart: alwayscontainer_name: filemanagervolumes:-  /data/filemanager/files:/var/www/mountports:- 8011:80networks:- files
networks:files:

2.创建File Manager容器

[root@docker filemanager]# docker-compose up -d
Creating network "filemanager_files" with the default driver
Creating filemanager ... done

3.查看容器状态

[root@docker filemanager]# docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED              STATUS              PORTS                                       NAMES
b82aa51eeb11   smokserwis/filemanager   "docker-php-entrypoi…"   About a minute ago   Up About a minute   0.0.0.0:8011->80/tcp, :::8011->80/tcp       filemanager

八、登录File Manager

1.进入File Manager首页

fm_admin / fm_admin
在这里插入图片描述

2.进入File Manager首页

在这里插入图片描述

九、上传文件

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_404503.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自媒体短视频中视频相关的问题总结,涉及视频类型、质量、时长和原创等方面

自媒体短视频中视频相关的问题总结,涉及视频类型、质量、时长和原创等方面 大家好,我是我赢助手,专注于自媒体短视频去水印、去重和文案提取运营! 前几天跟大家分享了我最近在做的一个短视频账号,也就是刚刚开始做短…

软件工程专业如何论文选题?

Ladies and gentlemen,写论文可谓是读书阶段最为关键的一环,你们是否还记得被论文折磨的日日夜夜,最可怕的不是导师催促你时铁青的面容,而是眼看着DDL(Deadline)来临,你的论文题目却让你一筹莫展…

【附源码】计算机毕业设计SSM体育队训练的信息管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

初识Classic AUTOSAR开发工具链

在过去,软件和硬件之间具有很强的耦合性,阻碍了软件组件在不同硬件平台上的可移植性和重用性。而AUTOSAR作为汽车电子行业的标准,提供标准的软件接口定义,工程师可以根据需求将软件组件分配到汽车的ECU中,实现标准软件…

关于Vue项目npm操作中npm run serve或npm run dev报错以及二者区别

🎯问题分析 我们在启动vue项目的时候,需要用到npm操作,比如使用npm run serve或npm run dev。比如说我们下载其他人的开源vue项目时,我们想在本地运行时,我们用的到npm run serve或npm run dev有时候会出现报错&#x…

Windows11+wsl2+cuda+conda+pytorch安装记录之处处都是坑

由于代码在windows上运行总是抛奇奇怪怪的错误,一怒之下换linux环境运行,win11自带的wsl很方便,在各种博客找了n多教程,历时两天,终于安装好了环境,配置这个环境的目的是为了运行深度学习的代码&#xff0c…

摄像机登录网页界面提示无法跳转登录页面,网页提示无法访问此页面

摄像机登录网页界面提示无法跳转登录页面,网页提示无法访问此页面 (报错截图) 首先通过ping设备看是否ping得通IPC,如不通,检查IPC的供电和网络。 供电排查方法: (1)、观察IPC红外…

泊松流(Poisson Flow)生成模型

又搬来了神器啊~~~ 扩散模型最早来源于物理中的热力学,最近却在人工智能领域大放异彩。还有什么物理理论可以推动生成模型研究的发展呢?最近,来自 MIT 的研究者受到高维电磁理论的启发,提出了一种称作泊松流(Poisson…

FDTD script command(源/监视器)

adddipole : 添加偶极子光源 addplane : 添加平面波 addindex : 添加折射率监视器 addmovie :添加电影监视器 addpower : 添加功率监视器 通用设置 设置结构名字 set("name",name);设置位置/跨度 set("x",1e-6);set("x span",1e-6); set(&q…

【软考中级信安】第三章--密码学基本理论

目录 1、密码学概况 1.1 密码学发展简况 1.2 密码学基本概念 1.3 密码安全性分析 2、密码体制分类 2.1 私钥密码体制(密钥不能公开) 2.2 公钥密码体制(密钥可以公开) 2.3 混合密码体制 3、常用密码算法 3.1 DES 3.2 …

【JAVA程序设计】(C00084)基于SSM+uniapp的社区疫情防控小程序及管理系统-有文档

基于SSMuniapp的社区疫情防控小程序及管理系统项目简介项目获取开发环境项目技术运行截图项目简介 基于后台ssm框架前台vue以及elementui框架小程序使用uniapp的社区疫情管控小程序及管理系统:系统管理员、用户 管理员角色包含以下功能: 首页、个人中心…

jmeter压力测试工具,雪崩效应,容错组件Sentinel

一。jmeter测试工具: 概念: 项目要上线,肯定是需要进行压力测试的 可以测试服务器够不够 场景: 一个问题,如果有服务接口被阻,那另一个接口是否会有影响 进而引出了jmeter,用来模拟线程压力下载…

YOLO性能指标

术语 全称 解释 True 表示推理正确 False 表示推理错误, 跟ground truth(位置,类别)比对之后得到的结论 positive 推理为正例,iou > 阈值,类别概率>阈值 negative 推理为反例,不符…

HarmonyOS系统中内核实现烟雾检测的方法

大家好,今天我们主要来聊一聊,如何使用鸿蒙系统来操作烟雾浓度传感器。 目录 第一:烟雾浓度传感器原理 第二: 鸿蒙相关API函数分析 Init_E53_SF1() MQ2_PPM_Calibration() Get_MQ2_PPM() 第三:硬件设计 第四&…

【单片机毕业设计】【mcuclub-hj-006-7】基于单片机的空气质量(天然气、CO、甲醛、甲苯、TVOC、CO2)检测的设计

最近设计了一个项目基于单片机的空气质量(天然气、CO、甲醛、甲苯、TVOC、CO2)检测系统,与大家分享一下: 一、基本介绍 项目名:空气质量(天然气、CO、甲醛、甲苯、TVOC、CO2) 项目编号&#x…

04 CSS01

目标: 1、基础认知 2、基础选择器 3、字体和文本相关样式 4、Chrome调试工具 5、综合案例 一、基础认知 1.1 css介绍 中文名:层叠样式表 作用:给页面中的html标签设置样式 1.2 css语法规则 css写在style标签中,style标签一般…

【DETR 论文解读】End-to-End Object Detection with Transformer

目录前言一、整体架构二、基于集合预测的损失函数2.1、二分图匹配确定有效预测框2.2、损失函数三、前向推理四、掉包版代码五、一些问题Reference前言 贡献/特点: 端到端:去除NMS和anchor,没有那么多的超参,计算量也大大减少&am…

二叉树的OJ练习题

1.单值二叉树 描述:如果二叉树每个节点都具有相同的值,那么该二叉树就是单值二叉树。只有给定的树是单值二叉树时,才返回 true;否则返回 false。 链接:965. 单值二叉树 - 力扣(LeetCode) 思路…

世界陶瓷卫浴100强榜单发布!

​  经过一年的严格数据审查,科学统计分析,备受全行业期待的 【世界陶瓷卫浴100强统计排行榜 】于2022年10月19日在中国佛山正式发布,除了陶瓷卫浴企业100强总榜以外,还发布了全球瓷砖企业30强、全球卫浴企业20强,全…

Python中的对象池是什么

在程序设计中,创建物体模块主要是通过生成对象来实现。当对象使用结束后,则会成为不再需要的模块进行销毁。 而在系统进行对象的生成与销毁过程中会大量的增加内存的消耗,同时对象的销毁往往会留下残留的信息,这样将会伴随内存泄露…