提交
This commit is contained in:
82
scripts/init.sh
Normal file
82
scripts/init.sh
Normal file
@@ -0,0 +1,82 @@
|
||||
#!/bin/bash
|
||||
# This script is used to initialize the environment for the project
|
||||
# Usage: ./init.sh
|
||||
# Author: LiDong
|
||||
# Date: 2022-11-08
|
||||
|
||||
# 出错退出
|
||||
set -e
|
||||
# 获取公网IP
|
||||
IP=$(curl -s ifconfig.me)
|
||||
|
||||
# 使用ip-api.com获取IP地理位置信息
|
||||
INFO=$(curl -s "http://ip-api.com/json/${IP}")
|
||||
|
||||
# 判断是否在中国
|
||||
if echo "$INFO" | grep -q '"country":"China"'; then
|
||||
echo "IP is in China"
|
||||
# 如果 REMOTE_CONTAINERS 为 true,则为容器开发环境,进行相关配置
|
||||
if [ "$REMOTE_CONTAINERS" = "true" ]; then
|
||||
# 容器开发环境,配置容器内部的环境变量
|
||||
echo "Configuring environment variables for container development environment"
|
||||
# 记录hostname到 data/hostname.txt 如果 data 目录不存在,则创建
|
||||
if [ ! -d "data" ]; then
|
||||
mkdir data
|
||||
chmod 777 data
|
||||
fi
|
||||
echo "$(hostname)" >data/hostname.txt
|
||||
|
||||
# 配置goproxy
|
||||
echo "Configuring goproxy"
|
||||
go env -w GO111MODULE=on
|
||||
go env -w GOPROXY=https://goproxy.cn,direct
|
||||
|
||||
# 配置npm mirror
|
||||
echo "Configuring npm mirror"
|
||||
npm config set registry https://registry.npmmirror.com
|
||||
yarn config set registry https://registry.npmmirror.com
|
||||
|
||||
# 安装pgit
|
||||
echo "Installing pgit"
|
||||
curl -o pgit https://gitee.com/gcslaoli/pgit/raw/main/shell/pgit && chmod +x pgit && sudo mv pgit /usr/local/bin
|
||||
|
||||
# 安装cool-tools
|
||||
echo "Installing cool-tools ..."
|
||||
go install github.com/cool-team-official/cool-admin-go/cool-tools@latest
|
||||
# 安装gf
|
||||
echo "Installing gf use mirror ..."
|
||||
pgit wget -O gf \
|
||||
https://github.com/gogf/gf/releases/latest/download/gf_$(go env GOOS)_$(go env GOARCH) &&
|
||||
chmod +x gf &&
|
||||
./gf install -y &&
|
||||
rm ./gf
|
||||
|
||||
fi
|
||||
|
||||
else
|
||||
echo "IP is not in China"
|
||||
# 如果 REMOTE_CONTAINERS 为 true,则为容器开发环境,进行相关配置
|
||||
if [ "$REMOTE_CONTAINERS" = "true" ]; then
|
||||
# 容器开发环境,配置容器内部的环境变量
|
||||
echo "Configuring environment variables for container development environment"
|
||||
# 记录hostname到 data/hostname.txt 如果 data 目录不存在,则创建
|
||||
if [ ! -d "data" ]; then
|
||||
mkdir data
|
||||
chmod 777 data
|
||||
fi
|
||||
echo "$(hostname)" >data/hostname.txt
|
||||
|
||||
# 安装cool-tools
|
||||
echo "Installing cool-tools ..."
|
||||
go install github.com/cool-team-official/cool-admin-go/cool-tools@latest
|
||||
# 安装gf
|
||||
echo "Installing gf use mirror ..."
|
||||
wget -O gf \
|
||||
https://github.com/gogf/gf/releases/latest/download/gf_$(go env GOOS)_$(go env GOARCH) &&
|
||||
chmod +x gf &&
|
||||
./gf install -y &&
|
||||
rm ./gf
|
||||
|
||||
fi
|
||||
|
||||
fi
|
||||
Reference in New Issue
Block a user