35 lines
1.1 KiB
Bash
Executable File
35 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
# 快速构建和推送镜像脚本
|
|
|
|
set -e
|
|
|
|
echo "🔨 构建Docker镜像..."
|
|
|
|
SSH_PASS="1"
|
|
APP_DIR="/home/fei/opk3s/app-project/001-rails8"
|
|
|
|
cd "$APP_DIR"
|
|
|
|
# 上传文件到master节点
|
|
echo "📤 上传文件到master节点..."
|
|
sshpass -p "$SSH_PASS" ssh fei@149.13.91.216 "mkdir -p /tmp/rails-app"
|
|
sshpass -p "$SSH_PASS" scp -r ./* fei@149.13.91.216:/tmp/rails-app/
|
|
|
|
# 构建镜像
|
|
echo "🔨 构建Docker镜像..."
|
|
sshpass -p "$SSH_PASS" ssh fei@149.13.91.216 "cd /tmp/rails-app && \
|
|
echo '$SSH_PASS' | sudo -S docker build -t rails-app:latest . && \
|
|
echo '$SSH_PASS' | sudo -S ctr -n k8s.io images import <(sudo docker save rails-app:latest)"
|
|
|
|
echo "✅ 镜像构建完成"
|
|
|
|
# 重启Pod
|
|
echo "🔄 重启Rails应用..."
|
|
sshpass -p "$SSH_PASS" ssh fei@149.13.91.216 "export KUBECONFIG=/etc/rancher/k3s/k3s.yaml && \
|
|
kubectl rollout restart deployment/rails-app -n rails-app"
|
|
|
|
echo "✅ 应用已重启"
|
|
echo ""
|
|
echo "💡 查看日志:"
|
|
echo " sshpass -p '1' ssh fei@149.13.91.216 'export KUBECONFIG=/etc/rancher/k3s/k3s.yaml && kubectl logs -n rails-app -l app=rails-app -f'"
|