首页
微语
统计
友链
留言
memos
圈子
图床
推荐
相册
网站监控
VPS监控
Search
1
实现typecho微信时光机功能的图文教程
49,136 阅读
2
为Typecho添加webp解析
43,783 阅读
3
Memos备忘录,记录瞬间想法
29,044 阅读
4
emlog数据成功迁移到typecho
28,418 阅读
5
Jasmine - 简约、美观的博客主题
27,967 阅读
手机达人
免费资源
电脑网络
娱乐休闲
网站建设
威言威语
Typecho
Emlog
WordPress
服务器
主题
插件
排行榜    
登录
/
注册
Search
标签搜索
wordpress
发布
插件
免费
教程
typecho
EMlog
PHP
代码
CSS
华为
图片
安装
代码修改
评论
手机
诺基亚
微信
文章
智能
Chen'mo
累计撰写
1,272
篇文章
累计收到
381
条评论
首页
栏目
手机达人
免费资源
电脑网络
娱乐休闲
网站建设
威言威语
Typecho
Emlog
WordPress
服务器
主题
插件
页面
微语
统计
友链
留言
memos
推荐
相册
网站监控
VPS监控
搜索到
1272
篇与
的结果
2022-11-15
advinservers:新增Micro vps/年付$0.6/荷兰 阿姆斯特丹/1核/32M内存/1G固态硬盘/100Mbps带宽/100G流量 vps
没抢到,铁定买台玩玩。看看我的128M的小鸡 http://762762.xyzadvinservers:我们是一家位于美国的负担得起的托管服务提供商。我们提供位于世界各地的可靠和优质的托管解决方案。支持支付宝、信用卡、paypal等付款方式。厌倦了服务器太快?想回到托管的美好时光吗?您想闲置更少的资源吗?我们为您找到了解决方案!我们推出了全新的服务器阵容!KVM Micro 32MB随机CPU(1核)32MB DDR3/4 内存1GB NVMe 固态硬盘存储100 Mbps(100 GB 流量)位于荷兰阿姆斯特丹ipv6 only$0.60/年($0.05/月)购买:https://clients.advinservers.com/store/worldwide-lxc-containers/kvm-micro-32mbKVM Micro 64MB随机CPU(1核)64MB DDR3/4 内存1GB NVMe 固态硬盘存储100 Mbps(100 GB 流量)位于荷兰阿姆斯特丹ipv6 only$1.20/年($0.10/月)购买:https://clients.advinservers.com/store/worldwide-lxc-containers/kvm-micro-64mb域名advinservers.com 域名状态clientTransferProhibited https://icann.org/epp#clientTransferProhibited(禁止转移)注册服务机构NameSilo, LLCDNS服务器gwen.ns.cloudflare.comDNS服务器thomas.ns.cloudflare.com注册日期2020-08-19过期日期2023-08-19更新日期2021-12-17
2022年11月15日
9,832 阅读
1 评论
0 点赞
2022-11-13
HTML+CSS+JS实现打字机效果!
直接上代码:HTML泰科智能 CSS.daziji{ height: 120px; line-height: 120px; text-align: center; position: relative; font-size: 50px; letter-spacing: .2em; } .daziji h2{ margin: 50px 0 20px; color: #fff;display: initial; } .container{ margin-right: 5px; } .delete{ border-right: 2px solid #fff; /*step-end是动画过渡效果,设置step-end代表不过渡*/ animation: blingbling 1s step-end infinite; } @keyframes blingbling{ from,to{ border-color: transparent; } 50%{ border-color: #fff; } }JavaScriptconst data = ["协手未来!","开启自动化新时代","构建更智能的世界","轻巧智动 协作无间"]; //打字机文字 英文","分隔 const container = document.getElementsByClassName('container')[0]; const Delete = document.getElementsByClassName('delete')[0]; //data数组的下标 let index = 0; //data数组每一项字符串的下标 let strIndex = 0; //开始的时间或是上一刻的时间 let start = null; //上次操作与现在的时间间隔 let interval = 0; //每次变化的间隔 let change = 500; //现在是否是删除状态 let isDelete = false; //根据requestAnimationFrame定义,这是一个回调函数,这个函数会 //传入一个参数,用来表示执行回调函数的时刻 function blink(time){ //这个方法必须在函数内部再调用一次才会无限循环调用 window.requestAnimationFrame(blink); //如果不存在开始的时间,说明是第一次进入函数 if(!start){ start = time; } //计算现在与上次操作差了多久 interval = time - start; //如果大于间隔时间,则应该执行新的操作 if(interval > change){ //取出数组的某一个字符串 let str = data[index]; //不在删除状态 if(!isDelete){ //change是时间间隔,使用随机数,模仿不同的打字时间 change = 500 - Math.random()*400; container.innerHTML = str.slice(0,++strIndex); } else{ container.innerHTML = str.slice(0,strIndex--); } //当前进行了操作,需要保存当前的时间 start = time; //对字符串进行判断,全部打印后则删除 if(strIndex == str.length){ isDelete = true; change = 200; start = time + 1200; } //删除后打印下一个 if(strIndex
2022年11月13日
13,441 阅读
0 评论
0 点赞
2022-11-12
JS前端获取用户的ip地址的方法
使用搜狐提供的IP获取服务,利用JS代码实现获取用户IP地址的方法!使用到的网址:http://pv.sohu.com/cityjson?ie=utf-8代码如下:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <script src="http://pv.sohu.com/cityjson?ie=utf-8"></script> <script> document.write(returnCitySN["cip"]+','+returnCitySN["cname"]) </script> </body> </html>
2022年11月12日
12,065 阅读
0 评论
1 点赞
2022-11-11
利用PHP输出文件夹下所有文件名称
有时候批量上传到服务器一些图片,然后需要贴出图片url,数量少还可以手动,但图片数量很多的时候,有点太费力气,正好群友昨晚问及,写几段代码就能轻松搞定,问题有二,1是图片是有序图片,例如从1.jpg-299.jpg,2是图片无序,例如http://scriptsz.com/images/eghj.jpg http://scriptsz.com/images/ehhj.jpg http://scriptsz.com/images/evhj.jpg下面分别用两端代码说明,用到了循环中的for和while1,针对有序:<?php for($i=1;$i<=100;$i++){ //其中100是生成到结束的数字 echo 'http://xxx.cc/'.$i.'.jpg<br>'; //替换域名和文件扩展名称 } ?>2,针对无序:<? $dir = "dirname"; //如果是文件所在目录,则填写/www/wwwroot/domain.com/ ,如果是文件所在目录下的子目录,直接填写子目录名称 if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { if($file!='.' & $file!='..') { echo "http://xxx.cc/da/$file.jpg <br>"; } } closedir($dh); } } ?>保存到服务器,然后打开文件即可获取到想要的内容,如果是粘贴到论坛也可以预先将BBcode加进去。
2022年11月11日
14,208 阅读
0 评论
0 点赞
2022-11-10
简约优雅的服务器监控面板
关于WardWard是一个简单且极简的服务器监控工具。Ward支持自适应设计系统。此外,它还支持暗主题。它只显示主要信息,如果您想看到漂亮的仪表板,而不是查看一堆数字和图表,则可以使用它。Ward在所有流行的操作系统上都很好,因为它使用OSHIGithub项目地址:https://github.com/Rudolf-Barbu/Wardlogo 预览 黑暗主题食用方法在Releases上下载最新的Java程序 Ward.jar https://github.com/Rudolf-Barbu/Ward/releases/download/v1.8.8/Ward.jar ,并将其放在服务器下单独的路径下确保你的服务器已安装Java环境并配置好环境,使用以下指令进行运行java -jar Ward.jar nogui防火墙放行后访问 http://ip:4000/ 进行配置Server Name:服务器名称Light Theme & Dark Theme:白色模式 & 黑色模式Application Port:程序运行端口填写完成后点击Launch会自动跳转到主页面,后续可配置反向代理并启用SSL证书访问程序运行端口即面板访问端口,请尽量避开80、443、21、22等常用端口,不可填写目前已经占用的4000端口设置主页如果在后期想改变配置可通过编辑同目录下 setup.ini 文件
2022年11月10日
15,301 阅读
0 评论
0 点赞
2022-11-09
Lsky Pro S3对象存储 Cloudflare R2对接
开通R2需要信用卡认证。定价 ·Cloudflare R2 文档R2 定价 自由付费 – 费率存储10 GB / 月$0.015 / GB 月A 类操作100 万个请求/月$4.50 / 百万请求B 类操作1000 万个请求/月$0.36 / 百万个请求官方文档可以非常直观的看到每月的免费额度和付费费用,可以看到其实我们每月是有10g免费存储的。而A类表示上传和修改有免费100万请求,B类表示读取也就是访问有免费1000万的请求。对接开始1.创建对象存储起一个喜欢的名称2.开启Cloudflare R2 的公开访问权限3.创建R2 api秘钥回到R2主页点击,管理R2 api令牌进行创建选择编辑权限,因为我们图床需要修改和删除创建完成后会得到以下信息,这个页面先别关闭我们需要用到它4.兰空S3对象存储对接看图我就懒得bb了* 访问域名:如上图,此域名可以自己解析公开访问里的域名,也可以在域访问哪里添加绑定。URL 额外参数:可不写* AccessKeyId:R2 访问密钥ID* SecretAccessKey:R2 机密访问密钥* 连接地址区域(region):us-east-1* 储存桶名称:第二图创建的名称最后教程到这里就结束了,设置的时候可以开启.env里的APP_DEBUG=false改成APP_DEBUG=true,他可以让你查看报错,这样你就可以快速的定位问题,而不是只提示上传失败4个大字,我是按照我的方法重新复现了一次,并没有新建存储桶所以可能会有遗漏的地方,欢迎评论区指出谢谢!!!!感兴趣可以观摩一下我的图床:pnglog.com
2022年11月09日
15,719 阅读
1 评论
0 点赞
2022-11-07
Typecho 评论验证插件 hCaptcha
最近的博客收到的垃圾邮件越来越多,虽然设置了简单的算术验证,但对于 bot 来说形同虚设,每天都能收到 10+ 的垃圾邮件,不得不上一些更有效的验证手段。研究了一圈网上能搜到的评论验证插件,基本上都是年久未修,最后准备使用 reCAPTCHAv3 这个插件,但考虑到 reCaptcha 在国内几乎不可用,所以在此基础上修改为了使用 hCaptcha 验证虽然在不少地区的体验也很糟糕。使用方法Github 地址:https://github.com/scenery/typecho-pluginsTypecho 版本:>= 1.2.0本站备份下载:[attach]1357[/attach]a. 注册 hCaptcha 账号,在 Sites 菜单栏里点击 New Site 添加一个网站获取 Site Key,点击你的头像 - Settings 获取 Secret Key。b. 下载插件,文件夹命名为 hCaptcha 后上传到网站 /usr/plugins/ 路径下。c. 进入网站后台-控制台-插件,点击启用:Site Key:第一步中获取的 Site KeySecret Key:第一步中获取的 Secret KeyWidget Theme:主题颜色,可设置 Light 或者 DarkWidget Size:样式大小,可设置 Normal 或者 Compact设置好后点击保存。d. 打开 /usr/themes/ 你的主题目录下 comments.php 文件,在提交按钮前面/后面插入下面代码:<?php hCaptcha_Plugin::output(); ?>*e. 网站管理员登录后不用进行验证,可直接提交评论。如果用户/游客提交评论失败,可能是开启了评论反垃圾保护导致,在网站后台-设置-评论里关闭,或者在主题目录下的 functions.php 文件中找到 function themeInit() 函数,里面添加:$options = Helper::options(); $options -> commentsAntiSpam = false;完成设置启用后,应该可以摆脱大部分垃圾评论了,后期可能会整合评论审核过滤和邮件提醒功能进去但 93.23% 的概率会鸽。
2022年11月07日
20,989 阅读
0 评论
0 点赞
2022-11-06
Joe 主题对接腾讯 LBS 展示 IP 属地
上次偶然逛 CSDN 看到腾讯的 LBS 服务支持 IP 定位,而且还支持 IPv6 地址定位,这个是其他 LBS 供应商所不支持的 (百度地图、高德地图),所有腾讯 LBS 服务还算良心。我们一步一步对接主题吧,今天先来申请应用 AK。注册账号https://lbs.qq.com/打开腾讯位置服务官网,点击登录,直接使用 QQ 登录或微信登录即可,如果单独注册需要输入手机号之类,麻烦的事情,但是使用 QQ 登录 / 微信登录后也需要校验一下手机号,但是个人信息不用填写太多。创建应用打开控制台,左侧有一个应用管理,点击后可创建应用,输入应用名称和应用类型即可,无需输入域名、备案信息啥的,所有这方便无需担心。创建应用一个应用可以添加多个 Key,一个 Key 每日可调用 10000 次,并发 5 次每秒。添加Key这时候我们选择 WebService API 服务即可,选择后有三种方案,域名白名单、授权 IP、签名校验,一般我们会部署在服务器上,所以可以选择授权 IP,这样方便一些;域名白名单和签名校验限制有些多,且我们这次对接主题也是以授权 IP 为主。保存后我们就能拿到一个 Key,这里我们简称 AK,下面开始对接 Joe 主题展示博友访客 IP 属地信息。添加主题调用方法2022.05.25:为了个人隐私,以下代码已去除城市和区县信息,仅显示国家和省核心方法代码位置:Joe/core/function.php 在末尾添加以下代码/* 腾讯Lbs IP定位服务 */ function curl_tencentlbs_ip($ip) { //应用Key也就是上面所说的AK,修改成自己的Key即可 $key = 'XXX-XXX'; $url = 'https://apis.map.qq.com/ws/location/v1/ip?ip='.$ip.'&key='.$key; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_AUTOREFERER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_HTTPGET, true); curl_setopt($ch, CURLOPT_REFERER, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'); $content = curl_exec($ch); curl_close($ch); if($content) { $json = json_decode($content,true); if($json['status'] == 0 ) { $resjson = $json['result']['ad_info']; if($resjson['province']=='北京市'||$resjson['province']=='天津市'||$resjson['province']=='上海市'||$resjson['province']=='重庆市') { return $resjson['nation'].$resjson['city']; } return $resjson['nation'].$resjson['province']; } } return ''; }上面调用接口后,处理以下国内的直辖市,这样就不会显示成北京市北京市了。修改主题评论相关代码评论代码位置:/Joe/public/comment.php需要修改的位置大概在末尾最后一个方法,位置 112 行。也可以在需要显示评论信息的位置插入下方嵌入点代码即可,我是把 IP 信息放在 agent 旁边了,这样不是特别显眼。<?php echo curl_tencentlbs_ip($comments->ip); ?>以下示例代码从 96 行到尾部<?php function threadedComments($comments, $options) { ?> <li class="comment-list__item"> <div class="comment-list__item-contain" id="<?php $comments->theId(); ?>"> <div class="term"> <img width="48" height="48" class="avatar lazyload" src="<?php _getAvatarLazyload() ?>" data-src="<?php _getAvatarByMail($comments->mail); ?>" alt="头像" /> <div class="content"> <div class="user"> <span class="author"><?php $comments->author(); ?></span> <?php if ($comments->authorId === $comments->ownerId) : ?> <i class="owner">作者</i> <?php endif; ?> <?php if ($comments->status === "waiting") : ?> <em class="waiting">(评论审核中...)</em> <?php endif; ?> <div class="agent"><?php echo curl_tencentlbs_ip($comments->ip); ?> <?php _getAgentOS($comments->agent); ?> · <?php _getAgentBrowser($comments->agent); ?></div> </div> <div class="substance"> <?php _getParentReply($comments->parent) ?> <?php echo _parseCommentReply($comments->content); ?> </div> <div class="handle"> <time class="date" datetime="<?php $comments->date('Y-m-d'); ?>"><?php $comments->date('Y-m-d'); ?></time> <span class="reply joe_comment__reply" data-id="<?php $comments->theId(); ?>" data-coid="<?php $comments->coid(); ?>"> <i class="icon fa fa-pencil" aria-hidden="true"></i>回复 </span> </div> </div> </div> </div> <?php if ($comments->children) : ?> <div class="comment-list__item-children"> <?php $comments->threadedComments($options); ?> </div> <?php endif; ?> </li> <?php } ?>效果如下: 其他博客主题,应该也可以适用。
2022年11月06日
13,054 阅读
1 评论
1 点赞
Linux一键更换国内软件源脚本:LinuxMirrors
GNU/Linux 一键更换国内软件源脚本 本项目旨在为从事计算机相关行业的朋友们提供便利 理论支持所有架构的环境,ARM 环境已经过测试。使用方法:bash
2022年11月05日
4,329 阅读
0 评论
0 点赞
2022-11-04
echarts结合百度地图使用
在HTML 中引入百度地图,详情见文档https://lbsyun.baidu.com/index.php?title=jspopular3.0/guide/helloworld`
2022年11月04日
14,805 阅读
0 评论
1 点赞
2022-11-01
Typedown – 免费轻量级 Markdown 编辑器
自从 Typora 发布收费版本以后,对于 Markdown 轻度使用用户来说,寻找一款免费开源的 Markdown 工具就显得更加有必要,今天老俍就介绍一款有望替代 Typora 的免费轻量级 Markdown 编辑器 Typedown。Typedown 是一款 Windows 下的轻量级 Markdown 编辑器,所见即所得,拥有打字机模式、专注模式,支持 LaTeX、代码高亮等功能。低 CPU 与内存占用,反应迅速,任何电脑都可流畅运行。主要功能边栏:文件/大纲源码模式专注模式打字机模式图片:本地、链接流程图绘制LaTeX 公式代码高亮自动保存自动补全深色模式Typedown下载地址:Microsoft Store https://apps.microsoft.com/store/detail/typedown-%E8%BD%BB%E9%87%8F%E7%BA%A7-markdown-%E7%BC%96%E8%BE%91%E5%99%A8/9P8TCW4H2HB4
2022年11月01日
13,415 阅读
0 评论
0 点赞
2022-10-29
推荐一个PHP图片分享系统 Linger
一直在找相册源码,可算找到一个自己满意的了。一个大佬的毕业作品,已经快几年了,没想到我反馈一下它竟然更新了一下。支持PHP7,现代化上传,手机端自适应。可以点赞、关注,带评论,还有动态。真的是合我意。下面引用原文: 感觉是时候发出来了,毕竟留在手上也没法用,倒不如分享出去,让大家一起玩玩。这是之前的毕业设计做的一个分享网站,弄了很长时间,结果答辩的时候不了了之,怎么说呢,感觉意义不大,要是各位有兴趣可以去 http://www.loveyu.me (好像已过期)注册一个玩玩,总之功能在那里。同样,这次提供Github的下载,想看看的可以飞奔过去,也希望各位一起参与到其中来吧。loveyu/Lingerhttps://github.com/loveyu/Linger简简单单的图片分享系统 — 查看详情Loveyu修正更新脚本判断2022/10/28 18:50:01Loveyu移除子模块22022/10/28 18:43:22Loveyu修正PATH_INFO为空的问题2019/12/5 00:32:16Loveyu修正PATH_INFO为空的问题2019/12/5 00:30:19Loveyu调整安装目录2017/12/20 11:31:05最后提交到 master 分支在 2022-10-28安装步骤第一步下载源码解压[attach]1351[/attach] cd configmv all-simple.php all.phpvim all.php //配置正确的数据库连接信息访问 http://xxx.xxx/install.php 进行安装安装后会创建一个管理员账户,用该账户登录可访问后台,然后进行详细的配置。网站配置由于完全依赖于伪静态,所以必须对文件进行重定向。nginx配置 location / { if (!-f $request_filename){ rewrite (.*) /index.php; } } # 重定向404页面,防止静态资源404无法获取 error_page 404 /index.php;Apache 配置RewriteEngine OnRewriteBase /不存在的文件直接重定向RewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^(.*)$ /index.php [L] 同时,对于Apache也可以使用PATH_INFO的形式,如 _index.php/Home_ . 系统默认将Web配置目录放到web文件夹下,其他对应的文件sys,app,install等文件均在web目录的上级目录,这是为了安全性的考虑,如果有需要将文件调整到一个目录,可具体参考_sys/config.php_文件调整目录结构,并调整index.php文件的具体参数。同时如果未安装系统,同时可能需要修改install.php中的文件参数。我安装时碰到的坑:1.我用php7.2安装好的,php7.4安装会报错。2.宝塔里设置目录为web 3.数据库用户为root,否则没有权限安装。
2022年10月29日
15,182 阅读
0 评论
0 点赞
2022-10-25
更改ProxmoxVE的LXC仓库为国内源
查找了几个国内的公共镜像站,发现中科大的有ProxmoxVE的仓库,于是决定更换到中科大的源。cp /usr/share/perl5/PVE/APLInfo.pm /usr/share/perl5/PVE/APLInfo.pm_backSSH登陆各节点,执行如下命令:grep -rn "download.proxmox.com" /usr/share/perl5/PVE/* #查找设定下载源的文件 sed -i.bak "s#http://download.proxmox.com/images#https://mirrors.ustc.edu.cn/proxmox/images#g" /usr/share/perl5/PVE/APLInfo.pm wget -O /var/lib/pve-manager/apl-info/mirrors.ustc.edu.cn https://mirrors.ustc.edu.cn/proxmox/images/aplinfo.dat systemctl restart pvedaemon.service重启节点后测试下载LXC模版速度终于不是蜗牛速度,要是阿里云的镜像站有收录ProxmoxVE的仓库就更好不过了。
2022年10月25日
11,815 阅读
0 评论
0 点赞
2022-10-24
分享一个简单的个人主页
今天是1024,据说是程序员的节日。虽然我不是程序员,但喜爱折腾。分享这个比较适合程序员的网页吧NutssssIndex1自适应、简约、动画、无js 作者的源码:https://gitee.com/n0ts/NutssssIndex本站备份下载:[attach]1348[/attach]
2022年10月24日
11,743 阅读
0 评论
0 点赞
2022-10-23
PVE7.2中安装docker 以及docker-compose
之前安装好了PVE,发现在LXC里的模版不能用,只能直接安装docker了。1.找到PVE中的shell,输入下述代码nano /etc/apt/sources.list将其中的内容删除,更换成下述内容# deb http://ftp.debian.org/debian bullseye main contrib # deb http://ftp.debian.org/debian bullseye-updates main contrib # security updates # deb http://security.debian.org bullseye-security main contrib deb https://download.proxmox.com/debian stretch pve-no-subscription deb https://mirrors.ustc.edu.cn/debian/ buster main deb-src https://mirrors.ustc.edu.cn/debian/ buster main deb https://security.debian.org/debian-security buster/updates main deb-src https://security.debian.org/debian-security buster/updates main # buster-updates, previously known as 'volatile' deb https://mirrors.ustc.edu.cn/debian/ buster-updates main deb-src https://mirrors.ustc.edu.cn/debian/ buster-updates main # This system was installed using small removable media # (e.g. netinst, live or single CD). The matching "deb cdrom" # entries were disabled at the end of the installation process. # For information about how to configure apt package sources, deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/debian buster stable # deb-src [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/debian buster stable deb [arch=amd64] https://download.docker.com/linux/debian bullseye stable # deb-src [arch=amd64] https://download.docker.com/linux/debian bullseye stable2.输入下述代码nano /etc/apt/sources.list.d/pve-enterprise.list讲原有内容注释掉。(就是在最前端加“#”井号)3.输入下述代码wget http://download.proxmox.com/debian/proxmox-ve-release-5.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-5.x.gpg等待完成后,输入下述代码;apt update 等待完成后,输入下述代码;apt upgrade等待更新完成;4.安装Docker.输入下述代码apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common sudo如果问你“Y/N”的情况,你就输入"Y"。5.输入下述代码curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -这步应该可以省。6.输入下述代码sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release >-cs) stable"7.输入下述代码sudo apt update8.输入下述代码apt-cache policy docker-ce输入完上述代码,你应该出现一堆地址;如果没有就是哪里出问题了9.输入下述代码sudo apt install docker-ce如果问你“Y/N”的情况,你就输入"Y"。等待完成10.输入下述代码sudo systemctl status docker11.输入下述代码docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /opt/appdata/portainer:/data --restart always --name portainer portainer/portainer此时应该已经算装好了;记住此时一个名为9000的端口;输入你的PVE对应的ip地址加上9000端口;就可以打开对应的docker 注册一个管理员。然后,可能存在差异,现在“local”的应该就行此时已完成Docker的相关安装。安装docker-compose 可参考前文wm_embed_post ids=1340
2022年10月23日
16,168 阅读
0 评论
0 点赞
2022-10-23
解决 Proxmox VE 无法安装到 eMMC 上的问题
最近在折腾锐角云…看到商家的介绍,8g 内存 64g 存储只要 200 多?!赶紧剁手下单,结果到手后才发现,内存和存储都是焊接到主板上的…不禁感叹,买的还是没有卖的精啊。这个设备原装是两个存储设备,一个板载 64G 的 eMMC 另外一个是采用 mSATA 口的 SSD ,到手的时候这台机器只剩下板载的存储了,那个 SSD 已经不翼而飞了,为这设备再添购一个 SSD 实在是不划算,同时为了最大化利用这个硬件,我在这台设备上折腾了一下,尝试使用 PVE,结果安装的过程中提示 unable to get device for partition 1 on device /dev/mmcblk1 解决经过一天的尝试,通过以下方式可以绕开官方的限制,在 eMMC 上安装 Proxmox VE 6.3:⚠️警告:PVE 并未针对这种设备优化,eMMC 也并非针对这种使用设计。PVE 每天要往存储设备中写入一定量的日志信息,USE AT YOUR OWN RISK!启动 PVE 安装程序,进入安装初始界面启动后点击 (高级选项) Install Proxmox VE (Debug mode)在第一次提示你可以输入命令的时候输入 Ctrl-D,继续安装过程在第二次提示你可以输入命令的时候输入 vi /usr/bin/proxinstall 编辑文件(或者使用其他文字编辑器如 nano)输入 /unable to get device 定位到对应位置你可以看到类似下方的内容:... } elsif ($dev =~ m|^/dev/[^/]+/hd[a-z]$|) { return "${dev}$partnum"; } elsif ($dev =~ m|^/dev/nvme\d+n\d+$|) { return "${dev}p$partnum"; } else { die "unable to get device for partition $partnum on device $dev\n"; } ...将其修改(添加)为:... } elsif ($dev =~ m|^/dev/[^/]+/hd[a-z]$|) { return "${dev}$partnum"; } elsif ($dev =~ m|^/dev/nvme\d+n\d+$|) { return "${dev}p$partnum"; } elsif ($dev =~ m|^/dev/mmcblk\d+$|) { return "${dev}p$partnum"; } else { die "unable to get device for partition $partnum on device $dev\n"; } ...(输入:wq回车即可保存) 然后输入 Ctrl-D 继续安装过程此时应该进入了正常的安装程序,硬盘选择的时候选择 /dev/mmcblk1 (没有bootX后缀)(建议关闭 swap)最后安装完成后输入 Ctrl-D,重启系统另外,也可以使用官方提供的方式,先安装 Debian 再安装 PVE,只不过那样安装很慢,而且网卡和分区并没有提前配置好,需要自己手动配置。具体参见:Install Proxmox VE on Debian Buster – Proxmox VEhttps://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Buster网上还有使用 bin 等类似 ghost 的方法直接 dd 进 eMMC,或者先安装到另外一个硬盘上再使用 DiskGenius 乾坤大挪移到 eMMC 等方法在此不再做过多叙述,可以参见下方文章:N3450(锐角云)安装Proxmox VE(PVE)教程 – 方舟基地https://www.wnark.com/archives/116.html 原理Install Proxmox VE (Debug mode) 提供了在安装过程中各个阶段执行脚本的能力。修改的文件是为安装程序提供 MMC 设备检测支持。没有直接修改 ISO 主要是由于,一是该文件在 pve-installer.squashfs 中,由安装程序在运行的时候加载,修改需要解包后重新打包,二是这样更透明,避免使用一个来源不是很明确的二进制文件。安装过程中,配置信息那里使用了 Linux 的图形界面,类似于 Ubuntu 的使用,按下 Ctrl+Alt+F1/F2 为相应的日志信息,按下 Ctrl+Alt+F3 可以切换出命令行,按下 Ctrl+Alt+F4 可以切换回图形界面。
2022年10月23日
23,689 阅读
1 评论
2 点赞
2022-10-22
linux格式化磁盘命令(磁盘分区及格式化)
Linux下挂载一个新硬盘的基本步骤是:给硬盘创建分区;给硬盘创建文件系统;挂载移动硬盘。需要用到的命令:lsblk #查看所有硬盘情况 df -lh #查看硬盘占用情况,以及挂载位置 sudo fdisk -l #查看硬盘分区情况 sudo fdisk /dev/sdb #给硬盘sdb创建分区 sudo mkfs.ext4 /dev/sdb #格式化硬盘sdb,并写入文件系统 sudo mount /dev/sdb /mnt/pan #将硬盘sdb挂载到 /mnt/pan 目录Linux系统秉承一切皆文件的思想,所有的设备都以文件的形式存储,硬盘设备一般保存在 /dev 目录下,以 sda、sdb 命名。Linux 系统使用任何硬件设备,都必须将设备文件与已有目录文件进行挂载。sda:第一块硬盘,若对硬盘进行了分区,则有 sda1(第一个分区),sda2 等,一般是机器自带的硬盘;sdb:第二块硬盘,一般为加装的移动硬盘。1、查看硬盘情况lsblk df -lh若已挂载,则通过 df -lh 可以看到硬盘的挂载位置;若未挂载,则只能通过 lsblk 查看到硬盘。2、创建分区sudo fdisk /dev/sdb根据提示,依次输入:n、p、1、回车、回车、w。意思是新建一个主分区,大小是整个sdb硬盘,然后保存退出。3、格式化硬盘,并写入文件系统sudo mkfs.ext4 /dev/sdb上述命令会格式化硬盘分区为ext4的文件系统。4、挂载硬盘sudo mkdir /mnt/pan sudo mount /dev/sdb /mnt/pan上述命令将硬盘挂载到 /mnt/pan 目录下,然后就可以使用了。5、设置开机自动挂载为了使硬盘开机能够自动挂载,还需打开下面的文件:sudo vim /etc/fstab在文件末尾增加一行:/dev/sdb /mnt/pan ext4 defaults 0 0
2022年10月22日
13,276 阅读
0 评论
0 点赞
2022-10-21
生产环境下如何优雅地使用 Docker 运行宝塔面板
此方案可能是全网最快的 宝塔面板 部署方案。 复习计算机网络时轻度折腾了 Linux、Docker、路由器 等,竟突然想到 Docker 部署宝塔面板的完美解决方案。在此使用 Python 开发并制作了宝塔面板 Docker 镜像。您可能存在疑问,宝塔面板为何不直接装到系统中?我们使用不同的服务器,往往产生较大环境差异,CentOS、Debian、Ubuntu?每次新装宝塔面板,都需要选择对应系统的脚本,漫长的安装过程不提,初次登录需要使用系统生成的账号和密码,每次搭建需要重新配置部分环境,同时保存好每个服务器的 url、账户、密码。如果您和我一样,较高频率地使用服务器开发,便感到十分繁琐。有没有一个工具能一键秒建宝塔面板,并在搭建过程中配置好账户信息?由此便得到了今天的主角,cyberbolt/baota。仍然有疑问,宝塔面板运行的生产环境,如 MySQL,并不适合将数据全部存储在容器中,实际工作中可能遇到安全隐患。在此我提供了 方案二,生产环境中将容器内宝塔面板的运行目录挂载至宿主机硬盘中。您会发现,无论是 方案一 还是 二,对常用 Docker 的开发者来说,都远比直接安装宝塔便捷。在 Docker 中运行宝塔面板,由于容器的隔离性,唯一的不同便是 舍弃了部分系统功能,您直接通过宝塔修改系统,只能作用于容器,并不会影响宿主机系统,但这恰好也是容器的优点。而常用的 Nginx、MySQL(MariaDB) 等均能完美使用。Docker 部署宝塔面板此方案可能是全网最快的 宝塔面板 部署方案。该镜像基于 宝塔Linux正式版 7.7.0(官方纯净版,可升级) 制作。维护脚本使用 Python 开发,源码和 Dockerfile 均已上传至 GitHub(欢迎您的 Star)。本镜像仅保留了最精简的 宝塔面板,未安装任何插件。初始化容器后,您可以根据需要选择安装插件。"Simple is better than complex!" 此外,如果您在生产环境下部署宝塔面板,请务必参考 方案二 创建容器。使用方法如下:(注:为了方便部署,该镜像去除了安全入口,您可以自行配置)方案一(最快化部署)docker run -itd --net=host --restart=always --name baota cyberbolt/baota:latest -port 端口号 -username 用户名 -password 密码 示例如docker run -itd --net=host --restart=always --name baota cyberbolt/baota:latest -port 8888 -username cyberbolt -password abc123456 --net=host : 容器和主机使用同一网络--restart=always: 守护进程,容器挂掉将自动重启-port : 填写宝塔面板运行的端口号-username: 填写宝塔面板的用户名-password : 填写宝塔面板的密码该方法的登录方式: 登陆地址: http://{{服务器的ip地址}}:{{您输入的端口号}} 账号: 您填写的用户名 密码: 您填写的密码 如果您未自定义用户名和密码,直接使用的如下命令docker run -itd --net=host --restart=always --name baota cyberbolt/baota:latest 宝塔面板也会自动创建,此时可通过默认信息登录,默认信息为 登陆地址: http://{{服务器的ip地址}}:8888 账号: cyber 密码: abc12345 方案二(生产环境部署)生产环境中,为了避免极小概率的数据丢失,我们将容器内的宝塔文件映射到宿主机的目录中(您之后安装的 Nginx、MySQL 等服务均会挂载到宿主机目录)。该方法是 Docker 部署宝塔面板的最优方案,可以在生产环境中运行。首先按最简方案创建一个测试容器(为保存宝塔文件到宿主机目录中)输入命令创建测试容器(这里仅为测试容器,为避免出错,后面几步请原封不动地复制粘贴)docker run -itd --net=host --name baota-test cyberbolt/baota:latest -port 26756 -username cyberbolt -password abc123456 将 Docker 容器中的 /www 目录 拷贝至宿主机的 /wwwdocker cp baota-test:/www /www 拷贝完成后删除创建的测试容器docker stop baota-test && docker rm baota-test 创建宝塔面板容器,并将宿主机目录映射至容器中(自行输入面板的 端口号、用户名 和 密码 后即可完成部署)docker run -itd -v /www:/www --net=host --restart=always --name baota cyberbolt/baota:latest -port 端口号 -username 用户名 -password 密码 示例如docker run -itd -v /www:/www --net=host --restart=always --name baota cyberbolt/baota:latest -port 8888 -username cyberbolt -password abc123456 --net=host : 容器和主机使用同一网络--restart=always: 守护进程,容器挂掉将自动重启-port : 填写宝塔面板运行的端口号-username: 填写宝塔面板的用户名-password : 填写宝塔面板的密码该方法的登录方式: 登陆地址: http://{{服务器的ip地址}}:{{您输入的端口号}} 账号: 您填写的用户名 密码: 您填写的密码 部署成功!电光笔记官网 https://www.cyberlight.xyz/
2022年10月21日
12,385 阅读
0 评论
0 点赞
2022-10-19
Jirafeau简洁的临时在线PHP网盘程序
源码介绍:欢迎使用开源软件Jirafeau项目。Jirafeau允许您“一键式文件共享”。它可以以一种简单的方式上传一个文件,并为其提供一个独特的链接。官方提供了演示地址:https://demo.jirafeau.net/一个上传→一个下载链接和一个删除链接,发送任何大文件(由于html5文件API→php post_max_大小限制不相关)。显示进度:速度、百分比和剩余上载时间在浏览器中预览内容(如果可能)可选密码保护(用于上传或下载)支持设置下载的过期时间第一次下载后自毁选项使用base 64编码的缩短的URL可配置的最大上载大小没有数据库,只使用基本的PHP用于存储优化的文件级重复数据消除(只存储一次重复文件,但生成多个链接)可选数据加密小型管理界面使用cronjob自动删除过期文件的cli脚本基本、适用的»服务条款«第页基本API通过命令行上传文件的bash脚本主题:Jirafeau是原Jyraphe项目的一个分支,基于0.5(稳定版本),有很多修改。因为它是最初的项目,所以Jirafeau是以吻的方式制作的(保持简单,愚蠢)。Jirafeau项目不会演变为一个文件管理器,它的重点是保持很少的依赖关系。下载地址https://github.com/Newlode/jirafeaudocker安装可参考这里https://blog.csdn.net/wbsu2004/article/details/125514779本站备份下载:[attach]1341[/attach]
2022年10月19日
13,571 阅读
0 评论
0 点赞
2022-10-19
centos8 安装docker-compose
折腾了一个下午,发现centos8因为服务到期,yum update 就会报错 Failed loading plugin "osmsplugin": No module named 'librepo' 百度也没找到合适的解决方法,只能手动安装了。 sudo curl -L "https://github.com/docker/compose/releases/download/2.11.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose或者直接下载wget https://github.com/docker/compose/releases/download/v2.11.1/docker-compose-linux-x86_64检查一下版本就知道是否安装成功了docker-compose --version
2022年10月19日
14,449 阅读
0 评论
0 点赞
1
...
3
4
5
...
64