摘要:
安装 protoc 使用操作系统自带的 apt 或 yum 安装,一般版本较老,推荐使用二进制方式安装 mkdir protoc wget -P protoc https://github.com/protocolbuffers/protobuf/releases/download/v28.3/pr 阅读全文
摘要:
最近在项目中,遇到了一个比较辣手的 iptables 规则配置问题。记录一下 简化一下问题: 本文中使用到 docker-compose 服务启动示例如下,虚拟机 IP 为 192.168.111.138 services: db: image: mariadb:lts container_name 阅读全文
摘要:
想用 jenkins 构建一个项目,打包成 docker 镜像,推送到指定服务器,在网上找了一圈,大多数都是过于依赖插件,要么细节没讲清楚,一直卡着。所以抽周末,直接从头搞了一遍 安装 gitlab 和 jenkins 使用 docker 安装,为方便记忆,gitlab 端口设置为了 5001,je 阅读全文
摘要:
步骤 查看当前的分区结构 [root@localhost ~]# cat /etc/fstab # # /etc/fstab # Created by anaconda on Thu Jun 13 10:26:50 2024 # # Accessible filesystems, by refere 阅读全文
摘要:
之前提到的 pod,一般只用于调试测试,在实际的生产环境中,则需要 Deployment 等控制器管理部署 Pod,维持 Pod 的副本数量以及 Pod 监控和维护。 创建deployment 使用命令行创建 kubectl create deployment nginx --image=nginx 阅读全文
摘要:
docekr 网络有三种配置方式 bridge host none bridge 模式 在宿主机,使用 ip addr 命令,可以查看当前机器的 ip地址 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN grou 阅读全文
摘要:
需求背景 使用 docker-compose 以 bridge 模式启动多个 docker服务,每个 docker-compose 启动一个服务,在宿主机的 ip 地址有可能变动的情况下,如何实现不同服务之间的通信? 大型项目: 直接上 k8s,使用 k8s中成熟的 service 和 ingres 阅读全文
摘要:
一、k8s 中的资源和组件 组件是为了支撑 k8s 平台的运行,而提前安装好的软件 资源是如何去使用 k8s 能力的定义,比如 k8s使用 pod 去管理业务应用,那么 pod就是 k8s的一类资源。 先要查看 k8s 下的所有的资源,可以使用如下命令 kubectl api-resources k 阅读全文
摘要:
安装 minikube 本文以 ubuntu22.04 为例,讲述如何安装 minikube 详细使用步骤可参考: minikube教程 安装 docker export DOWNLOAD_URL="https://mirrors.tuna.tsinghua.edu.cn/docker-ce" # 阅读全文
摘要:
安装 mongo 建议使用 docker直接一键安装 docker run --name mongo_zdp -p 27017:27017 -d mongo:latest GUI工具,我使用过的有两个,一个是 navicate,一个是 nosqlbooster。下载地址如下 https://nosq 阅读全文
摘要:
首先理解三个名词 http socket socks http 属于应用层协议,是基于 TCP 连接的;而 socket 是属于 TCP/IP 协议封装的,其本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议。可以讲 socket 看做网络通信过程中端点的抽象 阅读全文
摘要:
`nmap` 号称 `诸神之眼`,是常用的网络探测工具 ## 扫描远程端口 **直接扫描:** ```bash nmap scanme.nmap.org ``` ![](https://img2023.cnblogs.com/blog/1979227/202308/1979227-202308242 阅读全文
摘要:
```python #!/home/peng/pyCode/env/study/bin/python3.10 from fabric import Connection import argparse import logging from colorama import init, Fore, S 阅读全文
摘要:
## 理解IP路由 `ip` 地址可以理解为网络环境中的门牌号,你可以使用 `ip` 地址`ping通` 远在天边的网站,数据是如何到达的呢?靠的就是网络路径上每个节点的路由。**路由,简单的说就是指导IP报文该去哪的指示牌。** 当然,以上主要是理解 **路由器中的路由**,就是将已收到的数据包, 阅读全文
摘要:
```jsonc "actions": [ { "command": "find", "keys": "ctrl+f" }, { "command": "paste", "keys": "ctrl+v" }, { "command": { "action": "copy", "singleLine" 阅读全文
摘要:
### ssh - `ssh`是一种安全的远程登录方法,可以通过加密协议安全的登陆到另一台计算机上 - `sshd`全称 **ssh Daemon**,是 ssh 的服务端,用于接受来自客户端的请求并为其提供服务 ## ssh连接的常用配置 为方便起见,本机假设远程机的 **IP** 地址为 `12 阅读全文
摘要:
`python` 一直以语法灵活闻名于世。为保证多人合作时,能有良好的格式化规范,需要使用强大而专业的代码格式化工具。本文介绍常用的 `python` 格式化代码工具 `Black`。 ## 在 vscore 中使用 black 1.安装 black ```bash pip install blac 阅读全文
摘要:
# 一、防火墙综述 防火墙的主要作用就是对 `进出入网络的数据包` 进行检测。常见的有 `3层防火墙`,还有 `7层防火墙` - **3层防火墙:** 对于 `TCP/IP` 的七层模型来讲,第三层是网络层,网络层的防火墙会对 `源地址` 和 `目标地址` 进行检测。 - **7层防火墙:** 会对 阅读全文
摘要:
clikc 中文文档 clikc 英文文档 项目目录 简单小功能,计算 a + b 的值;做成命令行工具,直接通过命令行调用 ├── main.py ├── requirements.txt └── setup.py 具体代码 requirements.txt click==8.1.3 colora 阅读全文
摘要:
import asyncio async def factorial(name, number): print(f"开始执行 {name}") print(f"Task {name}: factorial({number})") await asyncio.sleep(3) print(f"任务执行 阅读全文
摘要:
会话操作 1. 新建会话 tmux new -s sn_name 2. 退出会话 ctrl + B + D 3. 查看所有会话 tmux ls 4. 恢复会话 tmux attach -d -t sn_name 注意 -d 和 -t 两个命令是不能替换位置的;-d 命令是为了防止在不同的终端打开时, 阅读全文
摘要:
rsync 特点 rsync 是一款 增量备份工具 支持本地复制,也支持远程同步 可以很容易保存原有文件的 权限、时间、软硬连接 快速: 只有第一次使用 rsync 时会复制全部内容,后续传输只会传输修改过的内容。 rsync 在传输过程中,可以实现压缩和解压缩操作,宽带占用较少 安全: 可以直接通 阅读全文
摘要:
什么是模块,什么是库 模块(module): 就是一个 .py 文件 库包(package):比模块更大的管理单位,形式就是一个文件夹 import 加载过程 用法如下: import module [as alias] import 最后导入的必须是模块,而不能是库包 ==导入模块时,会自上而下加 阅读全文
摘要:
使用 `nginx`配置 `https` 时,处理过程可以分为两步 - 使用 `nginx` 配置的证书,与客户端做 `https` 交互 - 请求经过 `nginx` 后,`https` 协议转换成 `http` 协议,与服务做 `http`交互 https 原理,参考下面的文章 ## 生成自签证 阅读全文
摘要:
## 防火墙综述 `linux` 防火墙,常用的包括三种:`ufw` 、 `firewalld` 和 `iptables`。学习难度依次递增。 常见的防火墙分为两种,一种是3层防火墙,另一种是 7 层防火墙。 > 在 TCP/IP 的七层网络中,第三层是网络层,三层防火网会在这层对源地址和目标地址进 阅读全文
摘要:
MySQL的 json 数据类型 MySQL5.7 后的版本,添加了对于 json 类型的支持。此前,json 类型的数据,只能在代码层面做 json.loads() 和 json.dumps() 操作。==因此无法直接对 json 内的数据进行查询操作。==所有的处理都需要将查询结果转换后再操作, 阅读全文
摘要:
首先在开始配置前,要想明白,`nginx` 配置 ==静态资源== 服务时基本逻辑,其实就是要 **将路由地址与服务器中文件真实的存储地址进行映射**。 ### 配置静态资源样例 - 配置前,首先要将当前配置文件的路径,写入到 `nginx.conf` 的配置文件中。 - 每一个 `server` 阅读全文
摘要:
创建一个多线程 from threading import Thread, ThreadError import time def task_01(): print("开始发送邮件") time.sleep(1) print("邮件发送成功") if __name__ == "__main__": 阅读全文
摘要:
""" 1)要求将所有级别的所有日志都写入磁盘文件中 2)all.log文件中记录所有的日志信息,日志格式为:日期和时间 - 日志级别 - 日志信息 3)error.log文件中单独记录error及以上级别的日志信息,日志格式为:日期和时间 - 日志级别 - 文件名[:行号] - 日志信息 4)要求 阅读全文
摘要:
### 创建连接 **1. 直接连接** ```python db = MySQLDatabase(database="peewee", user="root", host="127.0.0.1", port=3306, passwd="123456", charset='utf8') ``` ** 阅读全文
摘要:
源码安装和软件包管理器安装 源码安装 源码安装,下载的是源码包,用户自行编译和安装 优点: 是编译安装的过程可以设定参数,按照需求进行安装,安装的版本可以选择,灵活性比较大。 缺点: 编译,安装,配置,部署都比较麻烦,且不能自动解决软件包之间的依赖关系,同时存在升级系统可能导致之前安装的软件不能用的 阅读全文
摘要:
为什么要安装简洁的 zsh zsh 是 shell 中的佼佼者,但是网上配置 zsh的方案,几乎千篇一律都是使用的 oh-my-zsh配置的,个人感觉非常臃肿,配置低的话,用起来还会非常卡。所以参考多篇文章,使用原始的单个工具,搭建一个自己的轻量级的 zsh。 安装需要的第三方工具包 本文以 ubu 阅读全文
摘要:
防火墙开放指定端口 查看某个端口是否打开 firewall-cmd --query-port=3306/tcp 开放 5672 端口 firewall-cmd --zone=public --add-port=5672/tcp --permanent 关闭 5672 端口 firewall-cmd 阅读全文
摘要:
环境安装 gitlab 安装 使用 docker 安装 gitlab docker run -d --name gitlab --restart always --hostname gitlab.zdp.com -p 8082:443 -p 8083:80 -p 8084:22 gitlab/git 阅读全文
摘要:
注意 记录一个 go 语言编程中,可能不小心忽略的一个点, 当函数的 出参 如果是 数组、结构体、字典 类型时,是不需要声明的,可以直接使用。 但是如果 出参 是 指针 类型,则必须要==显示的声明==。 代码示例 type person struct { name string } func ma 阅读全文
摘要:
首先安装 wire 工具 go install github.com/google/wire/cmd/wire@latest go 文件 package main import ( "fmt" "github.com/google/wire" ) var DbSet = wire.NewSet(Ne 阅读全文
摘要:
wsl2 简介 wsl2 是 window 自家做的虚拟机,如果初次接触,可以建立的理解为 vmware。只不过他是 window 公司自己开发的,所以从兼容性上来讲,会更好一些。 我个人选择使用 wsl2 开发,而不是使用vmware 的一个重要原因,是因为在使用 jetbrains 系列的 ID 阅读全文
摘要:
package main import ( "fmt" "regexp" ) func main() { line := "2022/11/25 19:32 <DIR> catalog 2022/11/25 19:32 <DIR> catalog" reg := regexp.MustCompile 阅读全文
摘要:
GoLand 下载安装 从 GoLand官网,下载 2022.2 以前的版本。 下载后,直接按照默认设置安装即可,中间不建议更换存储目录 激活 打开 https://3.jetbra.in/ 网站,查看可用的站点,点击进去。 下载jar包,复制激活码 如果下载链接失败,可以从云盘下载 链接:http 阅读全文
摘要:
OSI 模型的前三层 应用层: 每一个应用程序自定义的协议 表示层: 数据的压缩与解压缩。图片的编码与解码 会话层: 会话管理(session) 和 网络验证 。包括断点续传和服务器验证用户登录等。比如访问淘宝网页和他的子网页无需重复登录。 nginx 作用 提供静态网页服务 提供多个站点,多个域名 阅读全文