离线安装Docker
离线二进制包下载地址 https://download.docker.com/linux/static/stable/x86_64/
1234wget https://file.babudiu.com/f/x2ux/docker-24.0.7.tgztar xf docker-24.0.7.tgzmv docker/* /usr/bin/
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778cat > /usr/lib/systemd/system/containerd.service << EOF[Unit]Description=containerd container runtimeDocumentation=https://containerd.ioAfter=network.target local-fs.targe ...
harbor接入外部trivy镜像漏洞扫描
harbor接入trivy漏洞扫描, 用到的开源工具harbor-scanner-trivy
安装需要依赖Redis, 先安装Redis
安装trivytrivy是扫描核心组件, 需要安装,参考trivy官网安装文档
https://aquasecurity.github.io/trivy/v0.41/getting-started/installation/
12345678910RELEASE_VERSION=$(grep -Po '(?<=VERSION_ID=")[0-9]' /etc/os-release)cat << EOF | sudo tee -a /etc/yum.repos.d/trivy.repo[trivy]name=Trivy repositorybaseurl=https://aquasecurity.github.io/trivy-repo/rpm/releases/$RELEASE_VERSION/\$basearch/gpgcheck=1enabled=1gpgkey=https://aquasecuri ...
python常用配置
pip升级pip版本1pip install -i https://mirrors.ustc.edu.cn/pypi/web/simple pip -U
镜像源中科大源配置说明: https://mirrors.ustc.edu.cn/help/pypi.html
临时使用1pip install -i https://mirrors.ustc.edu.cn/pypi/web/simple package
设为默认通过pip命令来配置通过配置文件来配置升级 pip 到最新的版本 (>=10.0.0) 后进行配置:
1pip config set global.index-url https://mirrors.ustc.edu.cn/pypi/web/simplevim ~/.config/pip/pip.conf
12[global]index-url = https://mirrors.ustc.edu.cn/pypi/web/simple
使用Nginx反向代理域名
需求如下:研发代码里写死了地址 https://api.chehezhi.cn 现在在不想发布新代码的情况下修改地址为 https://api-st.chehezhi.cn
手动增加反向代理的header先 ping api-st.chehezhi.cn 获取到服务器的ip
所以临时在pod里面新增了nginx 服务,配置如下,由于是代理https服务,还需要配置ssl证书,刚好有证书。。。
1234567891011121314151617181920212223server { listen 80; listen [::]:80; listen 443 ssl; listen [::]:443 ssl; ssl_certificate /etc/nginx/ssl.crt; ssl_certificate_key /etc/nginx/ssl.key; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_pre ...
使用Python解析xml
xml是一种固有的分层数据格式,最自然的表示方式是解析成树状。 ElementTree将整个 xml 文档解析成树状结构, Element就表示这个树状结构中的单节点。整个xml文档与Python交互(读取和写入文件)是在ElementTree(相当于整棵树)上完成。单个 xml 元素及其子元素的交互是在Element(相当于leaf)上完成。
XML语法文档声明从XML 1.1开始,在一个完整的XML文档中,必须包含一个XML文档的声明,并且该声明必须位于文档的第一行。XML文档声明的语法格式如下所示:
1<?xml version="version" encoding="value" standalone="value" ?>
version:用于指定遵循XML规范的版本号。在XML声明中必须包含version属性,且该属性必须放在XML声明中其他属性之前。
encoding:用来指定XML文档所使用的编码集。
standalone:用来指定该XML文档是否和一个外部文档嵌套使用,取值为yes或no。如果设 ...
Debian常用配置
这里以Debian12为例
修改国内源1sed -i 's@//.*debian.org@//mirrors.ustc.edu.cn@g' /etc/apt/sources.list
配置网络vim /etc/network/interfaces
固定ip配置12345678auto enp0s3iface enp0s3 inet static address 192.168.1.240/24 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1 dns-nameservers 8.8.8.8# 其中 network\broadcast 可以省略不写
DHCP配置1iface enp0s3 inet dhcp
重启网络服务1sudo systemctl restart networking.service
改造windows terminal支持lrzsz
在windows下使用xshell,如果执行 rz 或者 sz 是可以快捷上传/下载文件到本地的,这在使用堡垒机登录服务器会很有用,或者多层ssh嵌套的时候,某种极端的场景下,这可能是唯一的解决方案了。在windows下使用xshell连接服务器,这时候输入rz,会弹出一个文件选择框:
但是在windows terminal下,是这样的:
无意中发现了一个开源工具,可以解决这个问题,开源地址是:https://github.com/qingyunha/zssh
安装通过源码安装123git clone https://github.com/qingyunha/zssh.gitcd zsshgo get zssh
默认可执行文件是在GOBIN中, 需要放到系统的PATH目录中。
二进制安装123curl -OL https://file.babudiu.com/f/pYfA/zsshsudo mv zssh /usr/local/binsudo chmod +x /usr/local/bin/zssh
使用方法: 使用 zssh 替代 ssh 命令即可。
效果如下:
...
jenkins优雅的增加一个windows节点
配置windows这里我选择使用ssh来连接windows,这样可以完全由jenkins来管理windows节点,比如agent的启动与停止、agent的更新等都不需要登录windows来操作了。
安装openssh server这里选择moba ssh server, 下载地址:https://mobassh.mobatek.net/download.html moba ssh server 基于 cygwin 和原生windows有差别,特殊情况下执行结果不一致,我放弃了,转而使用原生 openssh 服务
GitHub地址:https://github.com/PowerShell/Win32-OpenSSH/releases
最新版和jenkins兼容性有些问题,我用的是 v8.1.0.0p1-Beta 版, 下载 OpenSSH-Win64.zip 解压到 windows 的 C:\Program Files\OpenSSH 目录下,然后执行(管理员权限运行powershell)
123456789101112131415cd "C:\Program Files\ ...
iTerm2配置记录
快捷键macOS的快捷键图标表示
控制键
说明
⌘
command
⌃
control
⌥
option
⇧
shift
其中control开头的快捷键不止在iTerm2中可用,在所有shell终端中都是可用的。
标签(tab)
功能
快捷键
备注
新建标签
command + t
关闭标签
command + w
切换标签
command + ← 或 →
可以用command + 数字键,切换到指定的tab上
切换全屏
command + enter
等同于 fn + f, fn + f在所有macOS软件中都可用
分屏
功能
快捷键
备注
垂直分屏
command + d
水平分屏
command + shift + d
切换到不同的分屏
command + option + 上下左右
同时操作所有窗口
command + shift + i
操作打开的所有tab和分屏, 功能生效时,右上角有个图标提示
其他
功能
快捷键
备注
快速定位光标
option + 鼠标点击
很常用的功能 ...
Ingress Nginx 配置ssl双向认证
记录一下在kuberentes下使用ingress-nginx来配置ssl双向认证,可以参考其他几篇文章:使用certbot自动申请ssl证书
使用acme.sh来自动更新https证书
制作和使用自签名证书
Nginx配置SSL双向认证
创建CA证书执行以下命令,创建自签的CA证书。
1openssl req -x509 -sha256 -newkey rsa:4096 -keyout ca.key -out ca.crt -days 3650 -nodes -subj '/CN=Fern Cert Authority'
生成server证书
这里可以使用公共的CA签发的证书, 比如各大云服务商购买的证书。下面是自签证书的步骤。
生成Server端证书的请求文件1openssl req -new -newkey rsa:4096 -keyout server.key -out server.csr -nodes -subj '/CN=foo.bar.com'
使用根证书签发Server端请求文件,生成Server端证书1openssl x ...