```
#!/bin/bash
# 定義環境變量
php_container_name="lnmp_php74"
git_repo="https://codeup.aliyun.com/6409d268e9f200d37adc2ffd/al7.git"
production_branch="master"
develop_branch="dev"
production_dir="/wwwroot/al7/production/al7"
develop_dir="/wwwroot/al7/dev/al7"
# 切換到測試環境
start_time=$(date "+%Y-%m-%d %H:%M:%S") # 格式化時間并記錄開始時間
start_timestamp=$(date -d "$start_time" +%s) # 將開始時間轉換為時間戳
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~部署測試環境(開始部署時間:$start_time)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
# 檢查目錄是否存在
if [ -d "$develop_dir" ]; then
echo "Git測試環境目錄已存在,正在切換到測試環境目錄<$develop_dir>"
cd "$develop_dir" || exit 1
echo "測試環境目錄<$develop_dir>已切換,正在拉取最新代碼到服務器測試環境"
git -C "$develop_dir" pull || exit 1
echo "最新代碼拉取到服務器測試環境已完成"
else
echo "Git測試環境目錄不存在,正在克隆代碼到測試環境目錄"
mkdir -p "$develop_dir" && chmod -R 777 "$develop_dir" || exit 1
git clone -b "$develop_branch" "$git_repo" "$develop_dir" || exit 1
echo "克隆代碼到服務器測試環境已完成"
fi
# ... (其他部署步驟)
end_time=$(date "+%Y-%m-%d %H:%M:%S") # 記錄結束時間
end_timestamp=$(date -d "$end_time" +%s) # 將結束時間轉換為時間戳
# 計算耗時
duration=$((end_timestamp - start_timestamp))
# 格式化耗時
hours=$((duration / 3600))
minutes=$((duration % 3600 / 60))
seconds=$((duration % 60))
echo "部署測試環境已完成,耗時:${hours}小時 ${minutes}分鐘 ${seconds}秒"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~部署測試環境(部署完成時間:$end_time)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
```
- 序言
- 開始JK部署[單臺服務器](非寶塔)
- 1.開始安裝jenkins
- 2.登錄且配置JK面板
- Linux系統
- Windows系統
- 3.創建自動化部署任務
- Linux Centos7.9系統
- Linux部署文件
- docker
- docker-compose.yml
- jenkins_home文件夾
- mongo文件夾
- mysql文件夾
- my.cnf
- log文件夾
- data文件夾
- nginx文件夾
- nginx.conf
- logs文件夾
- html文件夾
- conf.d文件夾
- default.conf
- www.conf
- php目錄
- logs目錄
- php74目錄
- Dockerfile
- php.ini
- rabbitmq目錄
- redis目錄
- logs目錄文件夾
- redis.conf
- wwwroot目錄
- default文件夾
- index.html
- index.php
- test目錄
- dev
- production
- shell腳本
- test.sh
- al7.sh
- 問題總結
- Linux備份
- 寶塔部署
- 安裝腳本
- 開始部署
- 寶塔自己的docker jk容器部署
- 自己編寫的yml jk部署
- 流程開始
- 問題總結