Docker多阶段构建 Docker
0x01 概述
Docker 分阶段构建是指在 Dockerfile 中使用多个 FROM 指令来分割构建过程,将整个构建过程分为多个阶段。每个阶段可以有自己的基础镜像,执行特定的构建步骤,并且可以从前一个阶段复制构建结果。最终只有最后一个阶段的构建结果会被保留在最终的镜像中,其它阶段的中间产物不会被包含在最终的镜像中。
分阶段构建的优点包括:
减小镜像大...
K8S 使用Istioctl安装Istio,配置Kiali Token登录 Kubernetes
0x01 安装istio
# wget https://github.com/istio/istio/releases/download/1.20.2/istio-1.20.2-linux-amd64.tar.gz
# tar -zxvf istio-1.20.2-linux-amd64.tar.gz
# cd istio-1.20.2/bin/
# 对于...
ESXi 精简置备磁盘空间回收 VMware
0x01 注意事项
回收磁盘磁盘类型必须为精简置备(thin)
回收前最好先备份
0x02 空间回收
打开ESXi,服务里面开启SSH
连接SSH,进入虚拟机所在磁盘
# 进去虚拟机所在磁盘,切换到需要回收的虚拟机目录
cd /vmfs/volumes/NAS-iSCSI/
cd CentOS
# 查看当前占用大小
du -sh *.vmdk
4....
K8S 基于Rook搭建Ceph集群(云原生存储最佳实践) Kubernetes
0x00 关于Rook
Rook 是一款云原生存储编排服务工具,Ceph 是一种广泛使用的开源分布式存储方案,通过 Rook 可以大大简化 Ceph 在 Kubernetes 集群中的部署和维护工作。
Rook 由云原生计算基金会( CNCF )孵化,且于2020 年 10 月正式进入毕业阶段。Rook 并不直接提供数据存储方案,而是集成了各种存储解决方案,...
K8S ingress 传递用户真实IP Kubernetes
0x01 前言
今天发现后端获取到的用户客户端ip都是内网地址 172.29.241.163。
访问逻辑为:用户访问->nginx->k8s-ingress->后端pod。
但是后端pod获取客户端的ip一直是172.29.241.163,原来这个ip的ingress的上游nginx的ip。
# nginx节点
root@iZbp12bku...
Docker部署minio Kubernetes
0x01 MinIO单节点Docker部署
1、docker minio 单机挂载单盘
run起来后直接访问http9001就是面板
docker run -it -d --name minio \\
--restart=always \\
-p 9000:9000 \\
-p 9001:9001 \\
-v /data/minio/data:/data \...
K8S部署Fluentd日志采集并推送到Elastic Kubernetes
0x01 前言
使用 fluentd 可以从每个容器收集 stdout/stderr 日志,以及在每个主机上 /var/log/containers/ 路径下的日志文件,日志将被发送到被选择的目标服务。
这里主要记录下Fluentd的部署过程,如何通过Fluentd把K8S集群Pod日志推送到Elastic上,Elastic和Kibana的部署不在这里赘述。...
清理Docker容器日志bash Docker
#!/bin/sh
# 清理Docker容器日志文件的脚本
logs=$(find /var/lib/docker/containers/ -name *-json.log)
for log in $logs
do
echo -n "clean logs :"; du -sh $log
cat /dev/null > $log
...
在使用Rancher2.5管理的K8S集群中,解决Rancher不可用时通过kubectl进行集群管理的问题 Kubernetes
[该文章已加密,请点击标题输入密码访问]