GZCTF部署步骤¶
一、准备工作¶
安装上传下载工具¶
安装docker¶
# 更新包管理工具
sudo apt-get update
# 安装必要依赖
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# 添加 Docker 官方 GPG 密钥(使用阿里云镜像加速)
sudo curl -fsSL http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# 添加 Docker 软件源
sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# 安装 Docker 社区版及相关组件(含 docker-compose-plugin)
sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
安装minikube¶
# 下载 minikube(使用阿里云镜像源)
curl -LO https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/latest/minikube-linux-amd64
# 安装到系统路径
sudo install minikube-linux-amd64 /usr/local/bin/minikube
安装kubectl¶
# 下载最新版 kubectl(使用阿里云镜像加速)
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
# 赋予执行权限并移至 PATH
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
配置docker镜像源¶
sudo mkdir -p /etc/docker(Ubuntu服务器安装docker之后默认有)
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://lbegolx2.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
强制 minikube 使用国内镜像仓库¶
安装K3S¶
# 安装 K3s 并配置所有 CTF 平台需要的参数
curl -sfL https://get.k3s.io | \
INSTALL_K3S_EXEC="
--kube-controller-manager-arg=node-cidr-mask-size=16
--kubelet-arg=max-pods=800
--write-kubeconfig-mode=644
" sh -
# 等待安装完成(约 30 秒)
# 看到 "systemd: Started k3s" 表示成功
配置 kubectl¶
# 复制配置到标准位置
mkdir -p ~/.kube
sudo cp /etc/rancher/k3s/k3s.yaml ~/.kube/config
sudo chown $USER:$USER ~/.kube/config
# 验证
kubectl get nodes
验证安装¶
# 一键检查所有配置
echo "节点状态: $(kubectl get nodes --no-headers | awk '{print $2}')"
echo "CIDR: $(kubectl get nodes -o jsonpath='{.items[0].spec.podCIDR}')"
echo "maxPods: $(kubectl get nodes -o jsonpath='{.items[0].status.allocatable.pods}')"
# 期望输出:
# 节点状态: Ready
# CIDR: 10.42.0.0/16 ✅
# maxPods: 800 ✅
安装 Helm(部署 Traefik 需要)