diff --git a/docker-compose.yml b/docker-compose.yml
new file mode 100644
index 0000000..d02865e
--- /dev/null
+++ b/docker-compose.yml
@@ -0,0 +1,16 @@
+version: '3.3'
+services:
+ easyimage:
+ image: ddsderek/easyimage:latest
+ container_name: easyimage
+ ports:
+ - '8080:80'
+ environment:
+ - TZ=Asia/Shanghai
+ - PUID=1002
+ - PGID=1003
+ - DEBUG=false
+ volumes:
+ - './public/config:/app/web/config'
+ - './public/api/i:/app/web/i'
+ restart: unless-stopped
\ No newline at end of file
diff --git a/public/api/i/2025/07/19/nf6h83-1.webp b/public/api/i/2025/07/19/nf6h83-1.webp
new file mode 100644
index 0000000..a40d17c
Binary files /dev/null and b/public/api/i/2025/07/19/nf6h83-1.webp differ
diff --git a/public/api/i/cache/20250719.jpg b/public/api/i/cache/20250719.jpg
new file mode 100644
index 0000000..71c03e9
Binary files /dev/null and b/public/api/i/cache/20250719.jpg differ
diff --git a/public/config/EasyIamge.lock b/public/config/EasyIamge.lock
new file mode 100644
index 0000000..6be4f4a
--- /dev/null
+++ b/public/config/EasyIamge.lock
@@ -0,0 +1 @@
+安装环境检测锁定文件,如需再次展示请删除此文件!
\ No newline at end of file
diff --git a/public/config/api_key.php b/public/config/api_key.php
new file mode 100644
index 0000000..323b8d5
--- /dev/null
+++ b/public/config/api_key.php
@@ -0,0 +1,16 @@
+Array
+ (
+ 'id'=>0,
+ 'expired'=>1751608714,
+ 'add_time'=>1680497928
+ ),
+ '4ab8829b49738fc562b40e66991b4504'=>Array
+ (
+ 'id'=>1,
+ 'expired'=>'1.728E+23',
+ 'add_time'=>1751608724
+ )
+ );
\ No newline at end of file
diff --git a/public/config/config.guest.php b/public/config/config.guest.php
new file mode 100644
index 0000000..b2aa9a4
--- /dev/null
+++ b/public/config/config.guest.php
@@ -0,0 +1,10 @@
+Array
+ (
+ 'password'=>'84983c60f7daadc1cb8698621f802c0d9f9a3c3c295c810748fb048115c186ec',
+ 'expired'=>1752905698,
+ 'add_time'=>1678988356
+ )
+ );
\ No newline at end of file
diff --git a/public/config/config.manager.php b/public/config/config.manager.php
new file mode 100644
index 0000000..c77c029
--- /dev/null
+++ b/public/config/config.manager.php
@@ -0,0 +1,148 @@
+ 'Password', 'Username2' => 'Password2', ...)
+// Generate secure password hash - https://tinyfilemanager.github.io/docs/pwd.html
+// 登录和管理密码 - Admin管理密码请在图床配置中修改
+$auth_users = array(
+ 'admin' => password_hash($config['password'], PASSWORD_DEFAULT), // 登录密码
+ 'user' => '$2y$10$iPtSuvQnv0FnqdWdQsuWMOGxlul/VQzcKl3q1K7VU/QTw102IU5yi' //密码:CQ4CdBGjGJnA
+ // 先写一个密码然后获取密码Hash填上去- https://tinyfilemanager.github.io/docs/pwd.html
+);
+
+// Readonly users
+// e.g. array('users', 'guest', ...)
+// 只读的用户
+$readonly_users = array(
+ 'user'
+);
+
+// Enable highlight.js (https://highlightjs.org/) on view's page
+$use_highlightjs = true;
+
+// highlight.js style
+// for dark theme use 'ir-black'
+// 主题 白天 vs/ 黑夜 ir-black
+$highlightjs_style = 'vs';
+
+// Enable ace.js (https://ace.c9.io/) on view's page
+$edit_files = true;
+
+// Default timezone for date() and time()
+// Doc - http://php.net/manual/en/timezones.php
+// 时区
+$default_timezone = 'Asia/Shanghai'; // UTC
+
+// Root path for file manager
+// use absolute path of directory i.e: '/var/www/folder' or $_SERVER['DOCUMENT_ROOT'].'/folder'
+// 管理的目录
+$root_path = $_SERVER['DOCUMENT_ROOT'] . $config['path'];
+
+// Root url for links in file manager.Relative to $http_host. Variants: '', 'path/to/subfolder'
+// Will not working if $root_path will be outside of server document root
+// 文件的路径
+$root_url = $config['path'];
+
+// Server hostname. Can set manually if wrong
+$http_host = $_SERVER['HTTP_HOST'];
+// $http_host = $config['imgurl'];
+
+
+// user specific directories
+// array('Username' => 'Directory path', 'Username2' => 'Directory path', ...)
+// 用户路径
+$directories_users = array();
+
+// input encoding for iconv
+$iconv_input_encoding = 'UTF-8';
+
+// date() format for file modification date
+// Doc - https://www.php.net/manual/en/datetime.format.php
+$datetime_format = 'Y.m.d H:i:s';
+
+// Allowed file extensions for create and rename files
+// e.g. 'txt,html,css,js'
+// 允许创建的文件格式
+$allowed_file_extensions = '';
+
+// Allowed file extensions for upload files
+// e.g. 'gif,png,jpg,html,txt'
+// 允许上传的文件格式
+$allowed_upload_extensions = '';
+
+// Favicon path. This can be either a full url to an .PNG image, or a path based on the document root.
+// full path, e.g http://example.com/favicon.png
+// local path, e.g images/icons/favicon.png
+// Favicon图标路径
+$favicon_path = $config['domain'] . '/favicon.ico';
+
+// Files and folders to excluded from listing
+// e.g. array('myfile.html', 'personal-folder', '*.php', ...)
+// 不显示的文件类型或文件夹
+$exclude_items = array('');
+
+// Online office Docs Viewer
+// Availabe rules are 'google', 'microsoft' or false
+// google => View documents using Google Docs Viewer
+// microsoft => View documents using Microsoft Web Apps Viewer
+// false => disable online doc viewer
+// 文档查看引擎 'google', 'microsoft' or false
+$online_viewer = 'microsoft';
+
+// Sticky Nav bar
+// true => enable sticky header
+// false => disable sticky header
+// 启用导航栏?
+$sticky_navbar = false;
+
+
+// max upload file size
+// 文件最大上传大小
+$max_upload_size_bytes = 5000;
+
+// Possible rules are 'OFF', 'AND' or 'OR'
+// OFF => Don't check connection IP, defaults to OFF
+// AND => Connection must be on the whitelist, and not on the blacklist
+// OR => Connection must be on the whitelist, or not on the blacklist
+// 开启登录IP管理
+// OFF 关闭 AND 需在白名单内 OR 必须是白名单内或者不是黑名单内
+$ip_ruleset = 'OFF';
+
+// Should users be notified of their block?
+// 告诉用户当前IP不可访问?
+$ip_silent = true;
+
+// IP-addresses, both ipv4 and ipv6
+// 登录白名单
+$ip_whitelist = array(
+ '127.0.0.1', // local ipv4
+ '::1' // local ipv6
+);
+
+// IP-addresses, both ipv4 and ipv6
+// 登录黑名单
+$ip_blacklist = array(
+ '0.0.0.0', // non-routable meta ipv4
+ '::' // non-routable meta ipv6
+);
diff --git a/public/config/config.php b/public/config/config.php
new file mode 100644
index 0000000..0459528
--- /dev/null
+++ b/public/config/config.php
@@ -0,0 +1,145 @@
+'简单图床 - EasyImage',
+ 'keywords'=>'简单图床,easyimage,easyimage2.0,无数据库图床,免费图床,PHP多图长传程序,自适应页面,一键复制链接,HTML5,markdown,bbscode',
+ 'description'=>'简单图床EasyImage是一款支持多文件上传的无数据库图床,可以完美替代PHP多图上传程序,最新html5自适应页面兼容手机电脑,上传后返回图片直链,markdown图片,论坛贴图bbscode链接,简单方便支持一键复制,支持多域名,api上传',
+ 'tips'=>' 如果你喜欢这种图床风格就下载喔 (๑•̀ㅂ•́)و✧
+ 简单图床是一款开源图床, 支持多文件上传无数据库
+
简单图床是一款开源图床, 支持多文件上传无数据库;
+如果你喜欢这种图床风格就下载喔 (๑•̀ㅂ•́)و✧
', + 'domain'=>'http://127.0.0.1:8080', + 'imgurl'=>'https://blog.meowrain.cn/api', + 'user'=>'meowrain', + 'password'=>'ef797c8118f02dfb649607dd5d3f8c7623048c9c063d532cc95c5ed7a898a64f', + 'ftp_status'=>0, + 'ftp_host'=>'', + 'ftp_port'=>21, + 'ftp_user'=>'', + 'ftp_pass'=>'', + 'ftp_mode'=>2, + 'ftp_pasv'=>1, + 'ftp_ssl'=>0, + 'ftp_time'=>30, + 'ftp_complete_del_local'=>0, + 'ftp_delloc_sync'=>1, + 'captcha'=>0, + 'mustLogin'=>0, + 'apiStatus'=>1, + 'path'=>'/i/', + 'storage_path'=>'Y/m/d/', + 'mime'=>'image/*,video/*', + 'imgName'=>'default', + 'maxSize'=>35651584, + 'maxUploadFiles'=>30, + 'watermark'=>0, + 'waterText'=>'简单图床 - png.cm', + 'waterPosition'=>9, + 'textColor'=>'rgba(255,0,0,1)', + 'textSize'=>20, + 'textFont'=>'/public/static/pang_men_zheng_dao_biao_ti_ti_3.0.ttf', + 'waterImg'=>'/public/images/watermark.png', + 'extensions'=>'jpg,jpeg,png,gif,bmp,webp,ico,jfif,tif,tga,svg', + 'compress'=>0, + 'compress_ratio'=>80, + 'thumbnail'=>1, + 'thumbnail_w'=>258, + 'thumbnail_h'=>258, + 'imgConvert'=>'webp', + 'maxWidth'=>18432, + 'maxHeight'=>10240, + 'minWidth'=>5, + 'minHeight'=>5, + 'imgRatio'=>0, + 'image_x'=>200, + 'image_y'=>200, + 'imgRatio_quality'=>80, + 'imgRatio_crop'=>1, + 'imgRatio_preserve_headers'=>1, + 'static_cdn'=>0, + 'theme'=>'default', + 'static_cdn_url'=>'https://fastly.jsdelivr.net/gh/icret/EasyImages2.0', + 'TinyPng_key'=>'', + 'checkImg'=>0, + 'checkImg_value'=>80, + 'moderatecontent_key'=>'', + 'nsfwjs_url'=>'', + 'showSwitch'=>1, + 'history'=>1, + 'showSort'=>1, + 'listNumber'=>20, + 'listDate'=>10, + 'customize'=>'', + 'checkEnv'=>0, + 'allowed'=>1, + 'upload_logs'=>0, + 'cache_freq'=>2, + 'upload_first_show'=>1, + 'dark-mode'=>1, + 'show_admin_inc'=>1, + 'show_user_hash_del'=>1, + 'show_exif_info'=>1, + 'info_rand_pic'=>1, + 'chart_on'=>1, + 'check_ip'=>0, + 'check_ip_model'=>0, + 'check_ip_list'=>'', + 'md5_black'=>0, + 'md5_blacklist'=>'', + 'auto_delete'=>0, + 'timezone'=>'Asia/Shanghai', + 'ip_upload_counts'=>0, + 'public'=>0, + 'public_list'=>Array + ( + 0=>'time', + 1=>'today', + 2=>'yesterday', + 3=>'total_space', + 4=>'used_space', + 5=>'free_space', + 6=>'image_used', + 7=>'file', + 8=>'dir', + 9=>'month' + ), + 'language'=>0, + 'login_bg'=>'../app/bing.php', + 'report'=>'', + 'image_recycl'=>1, + 'tinyfilemanager'=>1, + 'file_manage'=>1, + 'delDir'=>'cache/', + 'hide'=>0, + 'hide_key'=>'EasyImage2.0', + 'hide_path'=>0, + 'admin_path_status'=>0, + 'guest_path_status'=>0, + 'token_path_status'=>0, + 'admin_path'=>'u', + 'chunks'=>0, + 'NProgress_default'=>'#000000', + 'NProgress_Progress'=>'#03aa62', + 'footer'=>'', + 'ad_top'=>0, + 'ad_top_info'=>' +', + 'ad_bot'=>0, + 'ad_bot_info'=>'访问我们网站除主页和本“条款”页面以外的任何页面,即表示您同意这些使用条款和我们的隐私政策。如果您不同意,请不要使用我们的网站。
如果发生调查,本网站承诺与任何和所有法律机构合作。
当您访问本网站或使用本政策中进一步概述的服务(“服务”)时,本网站致力于保护您的隐私。作为使用本网站服务的条件,您同意向本网站提供某些个人信息。该信息包括但不限于: 电子邮件地址和您计算机的唯一 IP 地址(如果有)、财务信息(您的 Paypal 帐户使用的电子邮件地址)和人口统计信息(例如,邮政编码、邮政编码、家乡、性别、购买历史信息和年龄以及不是您计算机独有的 IP 地址)。请注意,我们不会在本网站的任何地方故意收集 13 岁以下儿童的联系信息或财务信息。请定期查看本隐私政策,因为我们可能会不时对其进行更新。本隐私政策的最后修订日期为 2021年10月25日。您每次访问本网站、使用服务或向我们提供信息时,即表示您当时接受本隐私政策中描述的做法。您同意,通过使用本网站,您明确并肯定地同意我们使用和披露您提供的信息,并同意接收电子邮件,如下面的隐私政策所述。
随着新功能添加到网站或我们纳入用户的建议,本政策可能会随着时间的推移进行修订。如果我们打算以与我们收集信息时声明的方式大不相同的方式使用或披露您的个人身份信息,您将可以选择我们是否以这种新方式使用或披露您的信息。我们还将在我们的网站显着位置发布隐私政策已修订的通知,以便您可以随时查看我们收集的信息、我们将如何使用该信息以及在何种条件下我们将向任何人披露这些信息。
我们使用联系信息(即您的电子邮件地址)来帮助我们有效地执行帐户任务(更改密码、找回丢失的密码)、提供您请求的服务、执行质量保证、销售分析和其他业务分析,并就相关事宜与您联系与您向我们下的任何订单。除非满足任何法律、法规、政府要求或司法命令,否则不会将您的财务信息用于其他用途。当您通过本网站进行购买或在本网站注册时,您将向我们提供一个电子邮件地址,我们或这些服务提供商可能会出于本段所述目的与您联系。
您同意,考虑到我们提供的服务的使用,允许我们使用您的个人信息向您发送营销和促销材料。我们也可能向您发送宣传第三方产品的营销和宣传材料。我们不会出租或出售您的个人信息以供第三方使用。这些材料可能包括但不限于: 向您提供有关如何使用服务的附加信息的时事通讯,以及来自我们或第三方的商品和服务的促销优惠。
我们可能会使用您的人口统计信息进行业务分析或根据您的兴趣定制网站和通讯。我们可能会与广告商和其他第三方共享匿名的汇总人口统计信息,以便他们可以针对适当的受众定制广告和通信。在本隐私政策允许我们共享您的联系信息或财务信息的任何时候,我们也可能会同时共享您的人口统计信息。
当我们确定此类披露是遵守法律、与执法部门合作或寻求执法协助或保护我们或网站其他访问者或用户的利益或安全时,我们可能会披露特定的联系信息。服务。此外,如果我们发生合并、收购、合并、剥离或破产,您的联系信息可能会传递给第三方。
Cookies : “cookie”是我们保存在您计算机硬盘上的包含非个人信息的小文件。这些 cookie 有助于让您更快地访问您已经访问过的页面。它们还允许您个性化您的页面,并优化您在我们网站上的体验。我们还使用 cookie 来帮助我们了解有多少人访问了我们的网站、他们访问了我们的哪些网页以及他们在那里停留的时间。此信息可帮助我们确定我们的哪些网络功能非常成功以及哪些网站可能需要改进。您可以通过在浏览器的首选项或选项菜单中指明这一点来禁用计算机上的 cookie。大多数浏览器会自动接受 cookie,但允许您禁用它们。禁用 cookie 可能会阻止您正确使用服务或访问网站。
“会话 ID”允许我们在多个网页请求中识别特定用户。此会话 ID 会尽可能保存在您的 cookie 文件中。如果 cookie 未启用,或者如果用户的 Internet 浏览器程序不支持 cookie,则我们将在请求的网页中放置会话 ID。这使最终用户不必为每个网页请求不断地重新输入某些信息,例如帐户名和密码。每当用户关闭其 Internet 浏览器时,此会话 ID 就会过期。
我们的许多网页还包含特殊的电子图像(称为“单像素 gif”或“gif”),使我们能够仅收集非个人身份的流量统计数据和有关我们网站访问者的其他汇总信息。本站(通过自身或第三方)使用此技术收集和积累匿名数据,帮助我们了解和分析访问我们网站的人的体验,并连同您提供的其他信息,定制您未来的访问并改进我们的网站网站。例如,我们捕获有关所用浏览器类型、操作系统软件(例如 Windows 95 与 98 或 Macintosh)、cookie 偏好(用户是否打开或关闭它们)和搜索引擎关键字(哪些关键字做了什么)的数据。访问者用于访问我们的网站)。我们还记录了访问次数,所采取的路径,以及在我们网站内的站点和页面上花费的时间。请记住,这些信息都不是个人身份信息,我们只将这些信息分发给我们的内部员工以及与我们签署了保密协议的合作伙伴。我们与合作伙伴共享的任何信息都反映了整个网站或 Internet 使用趋势,而不是个别信息。
每次您访问本网站时,我们都会自动收集您的 IP 地址和您来自的网页。为了为您管理和优化站点并诊断我们站点的问题,我们使用您的 IP 地址来帮助识别您的身份并收集有关您的广泛人口统计信息。
我们可能会放置指向其他方运营的其他网站的链接,并且可能会不时在我们的促销电子邮件中包含指向第三方网站的信息和链接。其中一些其他网站包含我们的品牌名称和商标以及我们拥有的其他知识产权;其他人没有。当您点击这些链接并访问这些其他网站时,无论它们是否包含我们的品牌名称、商标和其他知识产权,您都需要注意,我们不控制这些其他网站或这些其他网站”商业惯例,并且本隐私政策不适用于这些其他网站。因此,这些其他网站的运营商可能会收集有关您的不同类型的信息,并且可能以不同于我们在网站上收集信息的方式使用和披露该信息。我们鼓励您查看他们的隐私政策,并提醒您我们不对他们的行为负责。
您理解并同意我们在服务器上存储和处理您的信息,并且通过向我们提供任何数据,您同意将此类信息传输到网站服务器。当您从我们帐户中删除文件时,您与该文件之间将不再存在任何链接。删除的文件可能会缓存在我们服务器中以节省带宽,以防其他人请求它们。
如果您对您提交给我们这个隐私政策或信息有任何疑问,您可以通过邮件方式联系我们
要向我们提交版权侵权通知,您需要发送书面通知,其中包含《数字千年版权法》第 512(c)(3) 条要求和规定的信息。
要撰写适当的 DMCA 通知,请说明以下信息:
未能包含上述所有信息可能会导致 DMCA 通知的处理延迟。请注意,根据 DMCA 第 512(f) 条,任何故意歪曲材料或活动侵权的人都可能需要承担责任。
如果我们收到声称侵犯版权的适当通知,它将通过删除或禁止访问声称侵权或成为侵权活动主题的材料迅速做出回应。请注意,我们不一定会向报告者发送有关删除操作的确认。