Co-authored-by: sundapeng.sdp <sundapeng@hashdata.cn> Reviewed-on: #27 Reviewed-by: yuyr <yuyr@zgclab.edu.cn> Reviewed-by: xuxt <xuxt@zgclab.edu.cn>
106 lines
2.6 KiB
Bash
Executable File
106 lines
2.6 KiB
Bash
Executable File
#!/bin/bash
|
||
|
||
################################################################################
|
||
# Ubuntu 22.04 环境初始化脚本
|
||
# 用途:安装开发测试环境所需的基础工具
|
||
# 系统要求:Ubuntu 22.04
|
||
# 使用方法:sudo ./init_environment.sh
|
||
################################################################################
|
||
|
||
set -e
|
||
|
||
echo "==================================="
|
||
echo "开始安装环境依赖..."
|
||
echo "==================================="
|
||
|
||
# 更新系统
|
||
echo "[1/4] 更新系统包列表..."
|
||
apt-get update -y
|
||
|
||
# 安装基础工具
|
||
echo "[2/4] 安装基础工具..."
|
||
apt-get install -y \
|
||
vim \
|
||
curl \
|
||
wget \
|
||
git \
|
||
htop \
|
||
tree \
|
||
net-tools \
|
||
dnsutils \
|
||
iputils-ping \
|
||
telnet \
|
||
traceroute \
|
||
lsof \
|
||
unzip \
|
||
zip \
|
||
tar \
|
||
jq \
|
||
ca-certificates \
|
||
gnupg \
|
||
lsb-release \
|
||
software-properties-common \
|
||
apt-transport-https \
|
||
build-essential \
|
||
python3 \
|
||
python3-pip \
|
||
python3-venv \
|
||
tmux \
|
||
ncdu
|
||
|
||
# 安装 Docker
|
||
echo "[3/4] 安装 Docker..."
|
||
|
||
# 卸载旧版本
|
||
apt-get remove -y docker docker-engine docker.io containerd runc 2>/dev/null || true
|
||
|
||
# 添加 Docker 官方 GPG key
|
||
install -m 0755 -d /etc/apt/keyrings
|
||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
||
chmod a+r /etc/apt/keyrings/docker.gpg
|
||
|
||
# 添加 Docker 仓库
|
||
echo \
|
||
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
|
||
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
|
||
tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||
|
||
# 更新包列表并安装 Docker
|
||
apt-get update -y
|
||
apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||
|
||
# 启动 Docker 服务
|
||
systemctl start docker
|
||
systemctl enable docker
|
||
|
||
# 添加当前用户到 docker 组
|
||
if [ -n "$SUDO_USER" ]; then
|
||
usermod -aG docker "$SUDO_USER"
|
||
echo "✓ 用户 $SUDO_USER 已添加到 docker 组"
|
||
fi
|
||
|
||
# 清理
|
||
echo "[4/4] 清理..."
|
||
apt-get autoremove -y
|
||
apt-get autoclean -y
|
||
|
||
# 显示安装结果
|
||
echo ""
|
||
echo "==================================="
|
||
echo "安装完成!"
|
||
echo "==================================="
|
||
echo ""
|
||
echo "已安装:"
|
||
echo " ✓ vim"
|
||
echo " ✓ curl, wget, git"
|
||
echo " ✓ Docker: $(docker --version)"
|
||
echo " ✓ Docker Compose: $(docker compose version)"
|
||
echo " ✓ Python: $(python3 --version)"
|
||
echo " ✓ 其他基础工具 (htop, tree, jq, tmux 等)"
|
||
echo ""
|
||
if [ -n "$SUDO_USER" ]; then
|
||
echo "提示:请重新登录以使 docker 组权限生效"
|
||
fi
|
||
echo ""
|
||
|