synchronization
This commit is contained in:
60
Docker/Builder/Buildkit/install.sh
Normal file
60
Docker/Builder/Buildkit/install.sh
Normal file
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
|
||||
#############################################################################################
|
||||
# 用途: 安装 Buildkit 脚本
|
||||
# 作者: 丁辉
|
||||
# 编写时间: 2023-12-05
|
||||
#############################################################################################
|
||||
|
||||
# 加载检测脚本
|
||||
source <(curl -sS https://gitee.com/offends/Linux/raw/main/File/Shell/Check_command.sh)
|
||||
|
||||
function CHECK(){
|
||||
# 官方下载仓库: https://github.com/moby/buildkit/releases/
|
||||
VERSION="v0.12.4"
|
||||
DIR="/usr/local/buildkit"
|
||||
|
||||
URL="https://github.com/moby/buildkit/releases/download/$VERSION/buildkit-$VERSION.linux-$ARCH_TYPE_2.tar.gz"
|
||||
BIN_NAME="Buildkit"
|
||||
CHECK_BIN "$DIR/bin/buildctl"
|
||||
}
|
||||
|
||||
# 引用 check_bin 变量不存在则安装
|
||||
function CHECK_BIN_INSTALL(){
|
||||
if [ "$INSTALL_BIN" = false ]; then
|
||||
CHECK_INSTALL wget
|
||||
SEND_INFO "正在安装 $BIN_NAME,请稍后"
|
||||
CHECK_DIR "$DIR"
|
||||
CHECK_COMMAND_NULL wget $URL
|
||||
CHECK_COMMAND_NULL tar -xf buildkit-v*.linux-$ARCH_TYPE_2.tar.gz -C /usr/local/buildkit
|
||||
CHECK_COMMAND_NULL echo 'export PATH=/usr/local/buildkit/bin:$PATH' \>\> /etc/profile
|
||||
CHECK_COMMAND_NULL source /etc/profile
|
||||
CHECK_SYSTEMD_FILE
|
||||
CHECK_COMMAND_NULL systemctl daemon-reload
|
||||
CHECK_COMMAND_NULL systemctl enable --now buildkitd
|
||||
SEND_INFO "正在清理文件"
|
||||
CHECK_COMMAND_NULL rm -rf buildkit-v*.linux-$ARCH_TYPE_2.tar.gz
|
||||
SEND_INFO "$BIN_NAME 版本: $(buildkitd --version | grep -o 'v[0-9]\+\(\.[0-9]\+\)\{2\}')"
|
||||
|
||||
else
|
||||
SEND_INFO "$BIN_NAME 已安装"
|
||||
CHECK_SYSTEMD buildkitd
|
||||
SEND_INFO "$BIN_NAME 版本: $(buildkitd --version | grep -o 'v[0-9]\+\(\.[0-9]\+\)\{2\}')"
|
||||
fi
|
||||
}
|
||||
|
||||
# 官方 toml 参数文档: https://docs.docker.com/build/buildkit/toml-configuration/
|
||||
function CHECK_SYSTEMD_FILE(){
|
||||
CHECK_COMMAND_NULL \\cp ./buildkitd.service /usr/lib/systemd/system/buildkitd.service
|
||||
CHECK_DIR "/etc/buildkit/"
|
||||
CHECK_COMMAND_NULL \\cp ./buildkitd.toml /etc/buildkit/buildkitd.toml
|
||||
}
|
||||
|
||||
function ALL(){
|
||||
CHECK_SYSTEMD docker
|
||||
CHECK_CPU
|
||||
CHECK
|
||||
CHECK_BIN_INSTALL
|
||||
}
|
||||
|
||||
ALL
|
Reference in New Issue
Block a user