首页
斐讯设备
疯言疯语
系统运维
编程语言
网站建设
友情连接
推荐
autojs
Search
1
charles破解注册码(含windows和mac)最新安装教程「亲测有效」
57 阅读
2
aris常用命令收集
32 阅读
3
【N1和Armbian】一、N1刷Linux系统armbian
31 阅读
4
docker更新现有容器为自动重启
29 阅读
5
[上]JAVA学习系列模块九第五章186.对象数组_基本使用
26 阅读
登录
Search
标签搜索
JAVA
JAVA学习系列
docker
Linux
js
N1
git
模块二
模块一
端口
模块五
数据库
模块九
模块四
镜像
模块三
模块六
MySQL
百度网盘
nginx
DaiMaFengZi
累计撰写
591
篇文章
累计收到
11
条评论
首页
栏目
斐讯设备
疯言疯语
系统运维
编程语言
网站建设
页面
友情连接
推荐
autojs
搜索到
272
篇与
的结果
2022-12-03
一步步教你用Docker搭建MQTT服务器
使用Docker搭建MQTT服务器拉取镜像docker pull registry.cn-hangzhou.aliyuncs.com/synbop/emqttd:2.3.6 运行镜像–name 名字-p 18083 服务器启动端口-p 1882 TCP端口-p 8083 WS端口-p 8084 WSS端口-p 8883 SSL端口-d 指定容器docker run --name emq -p 18083:18083 -p 1883:1883 -p 8084:8084 -p 8883:8883 -p 8083:8083 -d registry.cn-hangzhou.aliyuncs.com/synbop/emqttd:2.3.6 [blockquote2 name='洛维花']注意:记得放行这些端口。[/tip]进入emq服务页面在浏览器输入机器IP:18083 就可以进入emqtt页面初始的账户 admin, 密码 public
2022年12月03日
0 阅读
0 评论
0 点赞
2022-11-25
更换docker容器里的pip源。
先进入容器docker ps docker exec -it 容器ID /bin/bash更换源pip config set global.index-url https://mirrors.aliyun.com/pypi/simple # 永久配置国内镜像源 pip config list国内源列表国内镜像源: 清华: https://pypi.tuna.tsinghua.edu.cn/simple 阿里云: http://mirrors.aliyun.com/pypi/simple/ 中国科技大学: https://pypi.mirrors.ustc.edu.cn/simple/ 华中理工大学: http://pypi.hustunique.com/ 山东理工大学: http://pypi.sdutlinux.org/ 豆瓣: http://pypi.douban.com/simple/
2022年11月25日
4 阅读
0 评论
0 点赞
2022-11-25
在安装python 第三方库时遇到【WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, st】问题
在安装python 第三方库时遇到【WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, st】问题在命令执行窗输入:pip install Pyinstaller -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
2022年11月25日
2 阅读
0 评论
0 点赞
2022-11-24
vmocean纯ipv6的Apline系统下使用 Rclone 挂载 google drive 实现定时备份
前言通过 Apline 搭建的docker环境建站虽然没有宝塔面板方便但是对系统环境影响最小,可是备份是个问题。如果用的是大厂云服务器可以通过设置定时系统快照任务来备份,但是轻量云却不支持设置定时快照(腾讯云),宝塔面板自带很多易用的备份插件,我常用的是 OneDrive 备份,于是想到可以通过 Rclone 在服务器上挂载 google drive,然后编写一个简易备份脚本配合 Cron 任务来实现定时备份。下载安装Apline系统直接使用命令安装吧!apk add rclone初始化配置安装完成后输入:rclone config可以看到:No remotes found, make a new one? n) New remote s) Set configuration password q) Quit config n/s/q> n name> googledrive输入 n 新建一个配置,name 为你的配置名称,可以自定义,这里我输入的是 googledrive 。然后会出现挂载的服务类型,如下:Option Storage. Type of storage to configure. Choose a number from below, or type in your own value. 1 / 1Fichier \ (fichier) 2 / Akamai NetStorage \ (netstorage) 3 / Alias for an existing remote \ (alias) 4 / Amazon Drive \ (amazon cloud drive) 5 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Lyve Cloud, Minio, RackCorp, SeaweedFS, and Tencent COS \ (s3) 6 / Backblaze B2 \ (b2) 7 / Better checksums for other remotes \ (hasher) 8 / Box \ (box) 9 / Cache a remote \ (cache) 10 / Citrix Sharefile \ (sharefile) 11 / Compress a remote \ (compress) 12 / Dropbox \ (dropbox) 13 / Encrypt/Decrypt a remote \ (crypt) 14 / Enterprise File Fabric \ (filefabric) 15 / FTP Connection \ (ftp) 16 / Google Cloud Storage (this is not Google Drive) \ (google cloud storage) 17 / Google Drive \ (drive) 18 / Google Photos \ (google photos) 19 / Hadoop distributed file system \ (hdfs) 20 / Hubic \ (hubic) 21 / In memory object storage system. \ (memory) 22 / Jottacloud \ (jottacloud) 23 / Koofr, Digi Storage and other Koofr-compatible storage providers \ (koofr) 24 / Local Disk \ (local) 25 / Mail.ru Cloud \ (mailru) 26 / Mega \ (mega) 27 / Microsoft Azure Blob Storage \ (azureblob) 28 / Microsoft OneDrive \ (onedrive) 29 / OpenDrive \ (opendrive) 30 / OpenStack Swift (Rackspace Cloud Files, Memset Memstore, OVH) \ (swift) 31 / Pcloud \ (pcloud) 32 / Put.io \ (putio) 33 / QingCloud Object Storage \ (qingstor) 34 / SSH/SFTP Connection \ (sftp) 35 / Sia Decentralized Cloud \ (sia) 36 / Storj Decentralized Cloud Storage \ (storj) 37 / Sugarsync \ (sugarsync) 38 / Transparently chunk/split large files \ (chunker) 39 / Union merges the contents of several upstream fs \ (union) 40 / Uptobox \ (uptobox) 41 / Webdav \ (webdav) 42 / Yandex Disk \ (yandex) 43 / Zoho \ (zoho) 44 / http Connection \ (http) 45 / premiumize.me \ (premiumizeme) 46 / seafile \ (seafile) Storage> 17输入你要挂载的网盘序号,我要挂载的 googledrive 是 17,⚠️注意:序号不固定,请自行确认client_id 和 client_secret直接回车默认即可,(也可以自行创建,怎么创建我就不说了,有点麻烦。可以看官方文章:https://rclone.org/drive/ )然后会出现 权限 选择,如下:Option scope. Scope that rclone should use when requesting access from drive. Choose a number from below, or type in your own value. Press Enter to leave empty. 1 / Full access all files, excluding Application Data Folder. \ (drive) 2 / Read-only access to file metadata and file contents. \ (drive.readonly) / Access to files created by rclone only. 3 | These are visible in the drive website. | File authorization is revoked when the user deauthorizes the app. \ (drive.file) / Allows read and write access to the Application Data folder. 4 | This is not visible in the drive website. \ (drive.appfolder) / Allows read-only access to file metadata but 5 | does not allow any access to read or download file content. \ (drive.metadata.readonly) scope> 1 然后是选择是否进行高级配置,保持默认回车即可:Edit advanced config? y) Yes n) No (default)接着是自动配置选择,如下:Use auto config? * Say Y if not sure * Say N if you are working on a remote or headless machine y) Yes (default) n) No[blockquote2 name='洛维花']因为你的服务器并没有图形化界面无法使用浏览器打开网页,这里需要选择 n,[/tip]这里需要获取授权码并输入:Option config_token. For this to work, you will need rclone available on a machine that has a web browser available. For more help and alternate methods see: https://rclone.org/remote_setup/ Execute the following on the machine with the web browser (same rclone version recommended): rclone authorize "drive" "eyJjbGllbnRfaWQ1iOiIyOTE1ODgwMjc5MzctdWUzbm52b2tmdnYzcHBqYjVpcjZhdmdibGlzMWEyZ3EuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJjbGllbnRfc2VjcmV0IjoiR09DU1BYLUtYUnRmLXpxOXNtX2FObEQ2sbjJDaHg2ZzZKR1oiLCJzY29wZSI6ImRyaXZlIn0" Then paste the result. Enter a value. config_token> 授权码需要在本地电脑上获取,访问 https://rclone.org/downloads/ 根据你的电脑系统版本下载对应的 Rclone,下载完成后解压,这边用的是mac系统,所以需要下载的是mac版本。打开终端进入到下载的rclone目录。cd downloads cd rclone-v1.60.1-osx-amd64 ./rclone authorize "drive" "eyJjbGllbnRfaWQ1iOiIyOTE1ODgwMjc5MzctdWUzbm52b2tmdnYzcHBqYjVpcjZhdmdibGlzMWEyZ3EuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJjbGllbnRfc2VjcmV0IjoiR09DU1BYLUtYUnRmLXpxOXNtX2FObEQ2sbjJDaHg2ZzZKR1oiLCJzY29wZSI6ImRyaXZlIn0"浏览器应该会自动打开,如果浏览器没有打开可以根据提示复制地址访问。如果浏览器登录了 googledrive 的话会直接显示授权确认信息,如果没有登录的话会弹出登录页面,登录 googledrive 后也会显示授权确认信息。选择 接受 后在本地命令行会显示一串 JSON 格式的授权信息,复制授权信息包括首尾的 {},到 Linux 终端粘贴。然后,直接回车默认Configure this as a Shared Drive (Team Drive)? y) Yes n) No (default) y/n> 确认无误后输入 y 或者直接回车,接着会显示你选择的配置信息,确认无误后输入 y 保存配置。备份脚本备份脚本摘抄自,秋水逸冰 博客。原文链接:https://teddysun.com/469.html下载该脚本并赋予执行权限wget --no-check-certificate https://github.com/teddysun/across/raw/master/backup.sh chmod +x backup.sh修改并配置脚本请使用 vim 或 nano 等工具来修改。ENCRYPTFLG (加密FLG,true 为加密,false 为不加密,默认是加密)BACKUPPASS (加密密码,重要,务必要修改)LOCALDIR (备份目录,可自己指定)TEMPDIR (备份目录的临时目录,可自己指定)LOGFILE (脚本运行产生的日志文件路径)MYSQL_ROOT_PASSWORD (MySQL/MariaDB/Percona 的 root 用户密码)MYSQL_DATABASE_NAME (指定 MySQL/MariaDB/Percona 的数据库名,留空则是备份所有数据库)[blockquote2 name='洛维花'] ※ MYSQL_DATABASE_NAME 是一个数组变量,可以指定多个。举例如下:[/tip]MYSQL_DATABASE_NAME[0]="phpmyadmin" MYSQL_DATABASE_NAME[1]="test"BACKUP (需要备份的指定目录或文件列表,留空就是不备份目录或文件)[blockquote2 name='洛维花'] ※ BACKUP 是一个数组变量,可以指定多个。举例如下:[/tip]BACKUP[0]="/data/www/default/test.tgz" BACKUP[1]="/data/www/default/test/" BACKUP[2]="/data/www/default/test2/"LOCALAGEDAILIES (指定多少天之后删除本地旧的备份文件,默认为 7 天)DELETE_REMOTE_FILE_FLG (删除 Google Drive 或 FTP 上备份文件的 FLG,true 为删除,false 为不删除)RCLONE_NAME (设置 rclone config 时设定的 remote 名称,务必要指定)RCLONE_FOLDER (指定备份时设定的 remote 的目录名称,该目录名在 Google Drive 不存在时则会自行创建。默认为空,也就是根目录)RCLONE_FLG (上传本地备份文件至 Google Drive 的 FLG,true 为上传,false 为不上传)FTP_FLG (上传文件至 FTP 服务器的 FLG,true 为上传,false 为不上传)FTP_HOST (连接的 FTP 域名或 IP 地址)FTP_USER (连接的 FTP 的用户名)FTP_PASS (连接的 FTP 的用户的密码)FTP_DIR (连接的 FTP 的远程目录,比如: public_html)一些注意事项的说明:1)脚本需要用 root 用户来执行;2)脚本需要用到 openssl 来加密,请事先安装好;3)脚本默认备份所有的数据库(全量备份);4)备份文件的解密命令如下:openssl enc -aes256 -in [ENCRYPTED BACKUP] -out decrypted_backup.tgz -pass pass:[BACKUPPASS] -d -md sha15)备份文件解密后,解压命令如下:tar -zxPf [DECRYPTION BACKUP FILE]解释一下参数 -P:tar 压缩文件默认都是相对路径的。加个 -P 是为了 tar 能以绝对路径压缩文件。因此,解压的时候也要带个 -P 参数。[blockquote2 name='洛维花']因为疯子使用的系统是:Apline系统,所以需要安装:bash,tar,openssl,安装命令如下:[/tip]apk add bash apk add tar apk add openssl运行脚本开始备份./backup.sh脚本默认会显示备份进度,并在最后统计出所需时间。如果你想将脚本加入到 cron 自动运行的话,就不需要前台显示备份进度,只写日志就可以了。这个时候你需要稍微改一下脚本中的 log 函数。log() { echo "$(date "+%Y-%m-%d %H:%M:%S")" "$1" echo -e "$(date "+%Y-%m-%d %H:%M:%S")" "$1" >> ${LOGFILE} }改为:log() { echo -e "$(date "+%Y-%m-%d %H:%M:%S")" "$1" >> ${LOGFILE} }Apline定时备份关于如何使用 cron 自动备份,网上有一堆教程,这里以Apline 来举例说明。首先alpine内嵌的是BusyBox,使用alpine的crontab实际就是使用BusyBox的crond服务,那么下来就简单介绍下如何使用吧,网上教程还是比较多的:配置文件存放位置:配置文件是在如下目录中的/var/spool/cron/crontabs/使用方式向crontab的配置文件中添加配置vi /var/spool/cron/crontabs/root # 或者 crontab -e # 填入如下内容,最后一行为我添加的任务 # do daily/weekly/monthly maintenance # min hour day month weekday command */15 * * * * run-parts /etc/periodic/15min 0 * * * * run-parts /etc/periodic/hourly 0 2 * * * run-parts /etc/periodic/daily 0 3 * * 6 run-parts /etc/periodic/weekly 0 5 1 * * run-parts /etc/periodic/monthly 30 1 * * * cd /root/ && ./backup.sh 以上表示,每天凌晨 1 点 30 分,进入root目录执行一次 backup.sh 脚本。注意:一定要修改其中的 PATH 和 HOME 变量的值。尤其是 HOME 变量,rclone 命令能否正确执行,是要依赖于其配置文件的。用 root 用户配置的话,其配置文件夹应该是 /root/.config/rclone ,所以要更改 HOME 的值。最后,欢迎交流和提出意见。如果是系统,那么会报错。报错:sh: 0: unknown operand backup.sh: line 53: MYSQL_DATABASE_NAME[0]=: not found backup.sh: line 59: BACKUP[0]=/qinglong: not found backup.sh: line 120: syntax error: unexpected "(" (expecting "fi")先查看一下:首先登录到容器内,查看sh的版本,(通常有ash、bash、sh等),bash-4.3# ls -l /bin/*sh lrwxrwxrwx 1 root root 12 Jun 17 2017 /bin/ash ->/bin/busybox -rwxr-xr-x 1 root root 682128 Apr 20 2017 /bin/bash lrwxrwxrwx 1 root root 12 Jun 17 2017 /bin/fdflush->/bin/busybox lrwxrwxrwx 1 root root 12 Jun 17 2017 /bin/sh ->/bin/busybox发现alpine中的sh使用的是bin/busybox(命令展示结果最后一行),因此需要将sh切换到/bin/bash下下面给出解决思路:删除原有链接;新建一个软链接指向/bin/bash,脚本实现如下:cd /bin && rm -f sh && ln -s /bin/bash sh最后再执行脚本,能正常运行,问题解决,当然可以将其写入到容器构建中,做成新的镜像,以后使用该镜像创建出来的容器都不会再出现这类问题了。
2022年11月24日
0 阅读
0 评论
0 点赞
2022-11-23
vmocean纯ipv6用Apline成功安装docker
注册购买注册我就不说了吧?这个太简单不过了。vmocean安装docker和一、后台系统重装为Alpine 3.16 Default 20220622 Amd64版本二、使用vnc连接上主机因为这个机器是没有ipv6的所以我们需要用到vnc安装docker,我们使用的是Alpine那安装再简单不过了apk add docker rc-update add docker boot #添加开机启动 service docker start #手动开启docker等待跑完报错,就okdocker图形化管理工具汉化版portainer-ce的安装和使用一键安装代码docker run -d --restart=always --name="portainer" -p 2095:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data 6053537/portainer-ce[blockquote2 name='洛维花']注意:上面的2095端口只能更换成88802052208220868080,至于为何要使用2095端口,是因为Cloudflare开放HTTP访问的端口有这些!除此之外的端口无法访问,所以必须改成其中一个。[/tip]安装好之后打开浏览器,在地址栏输入 alpine linux IPv6:2095(如2607:5300:66:6b66::1:2095),回车进入portainer-ce登录界面。怎么操作不要我多说了吧?[blockquote2 name='洛维花']有些人的本地网络无法使用ipv6,那么我们就借助cloudflare来搞定。具体看下面[/tip]申请Cloudflare账号:https://dash.cloudflare.com/sign-up按照他网站上的说明添加您自己的域名,例如我的域名luoweihua.cn填写您想用的管理地址,可以是二级域名,比如dk.luoweihua.cn第一行“记录名称”填写“baota”,“记录类型”选择“AAAA”,“记录内容”填写您的外网IPv6地址,“CDN”务必要选择“开启”。访问等解析生效,然后您就可以通过域名:2095访问portainer-ce面板了!例如我的 http://dk.luoweihua.cn:2095Cloudflare支持的非常规端口如果你是用的是国内版本只支持标准端口。海外版本支持下面的端口。CloudflareCDN支持的 HTTP 端口为:8080,8880,2052,2082,2086和2095CloudflareCDN支持的 HTTPS 端口为:2053,2083,2087,2096和8443
2022年11月23日
5 阅读
0 评论
0 点赞
2022-06-25
CertMaker for iOS and Android解决fiddler抓包IOS安卓等问题
CertMaker for iOS and Android插件是解决iOS设备和Android设备,可能无法与Fiddler使用的默认HTTPS拦截证书一起使用。 要解决此不兼容问题,您可以安装生成证书的插件,该插件生成与那些平台兼容的拦截证书。提示:有时候解决证书的问题很管用。Fiddler插件下载地址:https://www.telerik.com/fiddler/add-ons
2022年06月25日
3 阅读
0 评论
0 点赞
2022-04-22
js/nodejs getMinutes获取当前时间,小于10前边补0
js/nodejs getMinutes获取当前时间,小于10前边补0var time = function(){ var date=new Date(); //年 var year=date.getFullYear(); //月 var month=(date.getMonth()+1)<10?"0"+(date.getMonth()+1):(date.getMonth()+1); //日 var day=date.getDate()<10?"0"+date.getDate():date.getDate(); //时 var hh=date.getHours()<10?"0"+date.getHours():date.getHours(); //分 var mm=date.getMinutes()<10?"0"+date.getMinutes():date.getMinutes(); //秒 var ss=date.getSeconds()<10?"0"+date.getSeconds():date.getSeconds(); var nowTime = year+"-"+month+"-"+day+" "+hh+":"+mm+":"+ss; return nowTime; } console.log("当前时间是"+time())
2022年04月22日
1 阅读
0 评论
0 点赞
2022-04-22
js实现new Date(),nodejs通用时间对象和时间戳操作
js中实现时间date对象var myDate = new Date();//获取系统当前时间,结果:Wed Aug 09 2017 00:00:00 GMT+0800 (中国标准时间)获取new Date对象的具体时间戳var date_in = date1.getTime();//date_in结果:1501862400000获取特定格式的时间myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4位,1970-????) myDate.getMonth(); //获取当前月份(0-11,0代表1月) myDate.getDate(); //获取当前日(1-31) myDate.getDay(); //获取当前星期X(0-6,0代表星期天) myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数) myDate.getHours(); //获取当前小时数(0-23) myDate.getMinutes(); //获取当前分钟数(0-59) myDate.getSeconds(); //获取当前秒数(0-59) myDate.getMilliseconds(); //获取当前毫秒数(0-999) myDate.toLocaleDateString(); //获取当前日期 var mytime=myDate.toLocaleTimeString(); //获取当前时间 myDate.toLocaleString( ); //获取日期与时间获取date1==2017-08-31var date1 = new Date().getFullYear() + "-" + (new Date().getMonth() + 1) + "-" + new Date().getDate(); var date3 = Date.parse(new Date(Date.parse((new Date().getFullYear() + "/" + (new Date().getMonth() + 1) + "/" + new Date().getDate()))))+86400000 var date2 = new Date(date3).getFullYear() + "-" + (new Date(date3).getMonth() + 1) + "-" + new Date(date3).getDate(),
2022年04月22日
1 阅读
0 评论
0 点赞
1
...
32
33
34