分类
公众号「0加1」

如何下载Windows各版本纯净镜像? 附吾爱破解好评如潮的迅雷单文件版~


title: 如何下载Windows各版本纯净镜像? 附吾爱破解好评如潮的迅雷单文件版~

Windows旧版本镜像可以通过 https://msdn.itellyou.cn/ 找到, 但里面提供的下载链接都是 ed2k 格式, 有些下载器下载很慢, 有些直接不支持ed2k格式

image-20210727164242713

目前国内下载ed2k最快的下载器还是迅雷

迅雷

这里提供一个从吾爱破解收来的好评如潮的单文件版迅雷, 下载地址为

https://zhaooolee.cowtransfer.com/s/361780e2e0ca47

save233

本文永久更新地址(欢迎来读留言,写评论):

https://www.v2fy.com/p/2021-07-27-win-1627375107000

分类
公众号「0加1」

Ubuntu20.04试水k8s单机版minikube部署实录


title: Ubuntu20.04试水k8s单机版minikube部署实录

最近玩Discourse论坛程序,由于资源消耗过于严重,这个月主机崩了好几次,我打算配合frp内网穿透,把个人服务器做成主从分布的架构,为了便于管理, 我选择采用目前最流行的k8s集群管理技术,对已有服务进行集群式管理,今天先本地Ubuntu20.04搭建一个单机版k8s,也就是minikube,试一下水。

k8s全称 Kubernetes , 是谷歌的一款开源框架, 作用是以集群的方式管理Docker容器,集群方式的好处是,即使部分服务器挂掉,也可以稳定地提供对外服务。

理论上,k8s是用来管理集群的,需要多台机器才能玩的转,但minikube 比较特别, 它可以利用virtualbox虚拟机技术,在一台机器上,模拟多台虚拟机,让我们更简单地体验k8s的魅力。

本文是探索k8s的第一篇文章,选了minikube 作为入门,后续会更新k8s多机部署的文章,以及各种深入研究使用的文章, 做成一个系列~

安装Docker

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

安装KVM2

sudo apt-get  update -y
sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils -y

安装 VirtualBox

wget https://download.virtualbox.org/virtualbox/6.1.24/virtualbox-6.1_6.1.24-145767~Ubuntu~eoan_amd64.deb

sudo apt install  ./virtualbox-6.1_6.1.24-145767~Ubuntu~eoan_amd64.deb  -y

安装Podman

. /etc/os-release
echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_${VERSION_ID}/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
curl -L "https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_${VERSION_ID}/Release.key" | sudo apt-key add -
sudo apt-get update
sudo apt-get -y upgrade
sudo apt-get -y install podman

安装运行minikube

  • 进入/opt文件夹, 下载minikube二进制文件
cd /opt
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

下载minikube-linux-amd64

  • 运行minikube
minikube start
  • 修复VT-X/AMD-v 未增强的错误

关闭虚拟机,启用虚拟化, 然后开机

重新运行 minikube start

运行成功

  • 测试kubectr
minikube kubectl -- get po -A

测试kubectr

  • 运行dashboard, 通过浏览器访问即可看到网页版管理页面
minikube dashboard

  • 查看k8s版本

查看k8s版本

至此k8s的单机版 minikube, 算是正式跑起来了

  • 在终端新开一个窗口, 创建一个部署
minikube kubectl -- create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.4
minikube kubectl -- expose deployment hello-minikube --type=NodePort --port=8080

创建一个部署

  • 打开Service中的Services , 可以看到新建的部署

新部署

虽然部署显示运行8080端口, 但是现在访问 8080 是不通的, 这个8080端口是运行在自身的容器里, 想要外部访问,需要在外部端口和容器的8080端口之间做一个映射

image.png

image.png

我们可以使用外部的7080端口映射到容器的8080端口

minikube kubectl -- port-forward service/hello-minikube 7080:8080

我们可以使用外部的7080端口映射到容器的8080端口

  • 可以通过本地的7080端口访问成功

  • 创建负载均衡部署, 也是运行在新容器的8080端口
minikube kubectl -- create deployment balanced --image=k8s.gcr.io/echoserver:1.4  
minikube kubectl -- expose deployment balanced --type=LoadBalancer --port=8080

窗口负载均衡部署

创建成功

  • 开启新窗口,运行以下命令, 开启minikube 网络隧道
minikube tunnel

开启minikube 网络隧道

  • 获取可通过隧道访问的ip

获取可通过隧道访问的ip

启用 minikube tunnel 后, 我们也可以在web版services中, 直接看到找到访问的ip和端口

kubectl实用技巧

我们可以使用alias语法将 minikube kubectl -- 使用 kubectl 进行代替

alias kubectl="minikube kubectl --"

使用kubectl

我们安装完成minikube后, 默认会开机自启动, 如果你想临时暂停minikube集群可以运行

kubectl pause

如果想停止集群, 可以运行

kubectl stop

如果我们想查看集群内, 各个容器的状态

kubectl get pods

容器

如果想查阅更多kubectl命令,可以运行

kubectl --help

kubectl

本文永久更新地址(欢迎来读留言,写评论):

https://www.v2fy.com/p/2021-07-26-k8s-1627292526000

分类
Chrome插件英雄榜

111《Unsplash For Chrome》查找免费无版权超清图并直接插入任意在线编辑器


title: 111《Unsplash For Chrome》查找免费无版权超清图并直接插入任意在线编辑器

Unsplash是一个无版权图片收录网站, 内含大量免费无水印高清大图, 是广受创作者们喜爱的图片素材网站

为了方便创作者们使用Unsplash的图片, 官方推出了一款扩展工具, 你可以在任意页面, 直接通过扩展搜索需要的图片(关键词最好是英文)

通过扩展程序小窗口, 找到合适的图片后, 我们可以将其直接插入在线编辑器, 极其便捷.

直接查找图片并插入到网页在线编辑器

edite

也可以将超清图片保存到桌面

save

girl

dog

food

《Unsplash For Chrome》 下载链接

Chrome

Edge

FireFox

离线安装包

暂无
暂无

小结

随着自媒体的兴趣, 内容创造者数量也越来越多, 而一张好图片, 能极大提升读者的观感.

在互联网时代, 并非所有的图片都需要付费使用, 但乱用图片产生的版权纠纷, 的确会非常麻烦.

Unsplash这款扩展程序, 的确提升了用户查找和使用无版权图片的效率, 值得一试~

写在最后(我需要你的支持) / At the end (I need your support)

  • 本文属于Chrome插件英雄榜 项目的一部分, 项目Github地址: https://github.com/zhaoolee/ChromeAppHeroes

  • This article is part of the ChromeAppHeroes project. Github link : https://github.com/zhaoolee/ChromeAppHeroes

  • Chrome插件英雄榜, 为优秀的Chrome插件写一本中文说明书, 让Chrome插件英雄们造福人类, 如果你喜欢这个项目, 希望你能为本项目添加一颗 🌟星.

  • ChromeAppHeroes, Write a Chinese manual for the excellent Chrome plugin, let the Chrome plugin heroes benefit the human, If you like this project, I hope you can add a star 🌟 to this project.

分类
公众号「0加1」

Windows窗口置顶工具WinTop置顶重要窗口,压缩包仅300K


title: Windows窗口置顶工具WinTop置顶重要窗口,压缩包仅300K

拖动小手图标到窗口, 即可置顶窗口和取消置顶

置顶

WinTop是款功能很专一的窗口置顶工具,它可以让任何程序窗口一直置顶在最前面,使用简单。

WinTop功能特色, 始终在其他窗口顶部保留一个窗口或将其恢复。(例如:特定浏览器窗口总在其它窗口之上)

下载地址

https://zhaooolee.cowtransfer.com/s/a9578399111849

本文永久更新地址(欢迎来读留言,写评论):

https://www.v2fy.com/p/2021-07-20-wintop-1626743825000

分类
公众号「0加1」

将树莓派挂载的硬盘资源,同步展示到互联网


title: 将树莓派挂载的硬盘资源,同步展示到互联网

本文通过树莓派3b挂载外置的硬盘,并将其中的资源实时映射到互联网。

最终效果

别人找你要资源,直接甩一个网址过去,纯粹无广告,比市面上任何云盘都方便且好用。

为什么要用树莓派?

任何一台可以联网的电脑,都可以充当本文树莓派的角色, 但树莓派的优势在于,省电,且运行Linux可以常年不关机,极端情况下,即使断电了,用充电宝也能维持树莓派供电。另外,树莓派所有数据都在本地,即使遇到类似B站云服务器爆炸,或者被被黑客攻击,数据也不会丢失。

你用的哪一款树莓派?刷的哪款镜像?

我使用的是树莓派3b, 刷的OpenWrt这款开源路由器镜像, 详细刷的步骤以前出过教程 将树莓派3B刷成OpenWrt软路由,成为魔法WiFi上网的强大路由器 https://v2fy.com/p/2021-02-06-pi3-1612603909000/

为了提升存储容量,我还挂了一块1TB的机械硬盘。

树莓派

如何便捷的往树莓派挂载的硬盘里,增删资源?

由于树莓派刷了OpenWrt的镜像,再加上我自己添加的一块外置网卡,树莓派已经是一个路由器了,我们只要通过无线接入树莓派路由器,就能对树莓派挂载的硬盘资源进行增删。

具体的操作步骤是,接入树莓派路由器网络,然后通过浏览器开启内置的ftp服务

开启FTP

windows添加ftp网络位置

windows添加ftp网络位置

服务端配置

服务端我用Nginx的stream 对frp进行了转发,Nginx将指向frp.v2fy.com的请求,转向绑定端口8081的Nginx服务,而8081端口的Nginx服务,将请求转发到绑定8080端口的frp服务端程序

配置文件 /etc/nginx/nginx.conf 的内容为

#user  nginx;
worker_processes  1;
load_module /usr/lib64/nginx/modules/ngx_stream_module.so;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

stream {
    map $ssl_preread_server_name $backend_name {
        frp.v2fy.com        frp_v2fy_com;
    }

   upstream frp_v2fy_com {
        server 127.0.0.1:8081;
   }

   server {
        listen       443 reuseport;
        listen  [::]:443 reuseport;
        proxy_pass   $backend_name;
        ssl_preread  on;
   }

}


events {
    worker_connections  1024;
}



http {


    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    charset utf-8,gbk;
    client_max_body_size 20m;

    set_real_ip_from 127.0.0.1;
    real_ip_header X-Forwarded-For;


    log_format  main  '$remote_addr  - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    gzip  on;
    include /etc/nginx/conf.d/*.conf;
}

配置文件 /etc/nginxconf.d/frp.v2fy.com.conf 的内容为

server {
    server_name      frp.v2fy.com;
    listen           80;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host:80;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}


server {
    listen       8081 ssl http2;
    listen       [::]:8081 ssl http2;
    server_name  frp.v2fy.com;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host:443;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

    ssl_certificate "/etc/nginx/ssl/frp.v2fy.com/fullchain.cer";
    ssl_certificate_key "/etc/nginx/ssl/frp.v2fy.com/frp.v2fy.com.key";
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout  10m;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;

    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
}

配置完成后,我用acme.sh脚本,为frp.v2fy.com 域名添加了自动续期的https证书配置,具体步骤可查看以往的博客 零依赖!使用acme.sh设置nginx多个https证书自动更新,无限续期https证书 https://v2fy.com/p/2021-06-27-nginx-https-1624774964000/

进入 /opt/ 目录,下载frp安装包并解压

cd  /opt/
wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_386.tar.gz
tar zxvf https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_386.tar.gz

进入 /opt/frp0.37.0linux_386, 将frps.ini 内容修改为

[common]
bind_port = 7000
vhost_http_port = 8080

通过 ./frps -c frps.ini 就可启动 frp的服务端了

但这样运行并不稳定,关闭终端服务端进程也就关闭了

我们需要安装pm2 用于创建一个守护frp服务端程序运行的脚本

npm install pm2 -g

将启动脚本写入文件,并赋予运行权限

···
echo ‘./frps -c frps.ini’ > start_frps.sh
···

使用pm2守护运行服务端脚本

pm2 start start_frps.sh

更详细的步骤可以查看往期博客 比坚果云更好用!无需上传!用frp内网穿透将当前桌面或图片文件夹实时分享到互联网 https://v2fy.com/p/2021-07-05-frp-1625488942000/

树莓派(客户端)配置

  • 全局安装pm2

pm2可守护frp客户端程序运行

npm install pm2 -g

pm2安装成功

  • 全局安装 http-server

http-server 可在树莓派开启一个http服务,处理fcp服务端转发过来的请求

npm install http-server -g
  • 编写http-server 启动命令, 并使用pm2守护运行
cd /opt/
echo 'http-server /mnt/sda1/frp -a 0.0.0.0 -p 8080' > start_hs.sh
chmod 755 start_hs.sh
pm2 start start_hs.sh
  • 下载frp到树莓派/opt 目录, 并解压
cd /opt
wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_arm64.tar.gz
tar zxf frp_0.37.0_linux_arm64.tar.gz
  • 进入 解压后的 frp 目录, 编辑 frpc.ini
[common]
server_addr = 服务器ip
server_port = 7000

[web]
type = http
local_port = 8080
custom_domains = frp.v2fy.com
  • 编写frpc的启动脚本, 并使用pm2 守护运行
cd /opt/frp_0.37.0_linux_arm64
echo "frpc -c frpc.ini" > start_frpc.sh
chmod 755 start_frpc.sh
pm2 start start_frpc.sh
  • 运行成功

  • 访问 frp.v2fy.com

一个实时同步本地硬盘数据到互联网的服务,就搭建完成了

本文永久更新地址(欢迎来读留言,写评论):

https://www.v2fy.com/p/2021-07-17-it-1626503043000