昨天部署了两台开源堡垒机jumpserver时遇到docker无法下载部分镜像导致安装失败解决方法。
以下是安装命令,记录留档。
cat /etc/centos-release
df -h
umount /home/
fuser -km /home
lvremove /dev/mapper/centos-home
vgdisplay
lvextend -L +140G /dev/mapper/centos-root
xfs_growfs /dev/mapper/centos-root
mount -a
vi /etc/fstab修改或者直接运行 sed -i '//home/s/^/# /' /etc/fstab
mount -a
cd /opt/
wget https://resource.fit2cloud.com/jumpserver/installer/releases/download/v4.10.12/jumpserver-installer-v4.10.12.tar.gz
tar -xf jumpserver-installer-v4.10.12.tar.gz
cd /opt/ jumpserver-installer-v4.10.12/
./jmsctl.sh install
cd /etc/docker/
cp daemon.json daemon.json.bak
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"data-root": "/var/lib/docker",
"live-restore": true,
"log-driver": "json-file",
"log-opts": {
"max-file": "3",
"max-size": "10m"
},
"registry-mirrors": [
"https://docker.1ms.run",
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com"
]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
cd /opt/ jumpserver-installer-v4.10.12/
./jmsctl.sh install
./jmsctl.sh start
-------------------------------------以下是自动脚本------------------------------------
!/bin/bash
记录安装过程的完整命令脚本
1. 系统信息检查
echo "=== 检查系统信息 ==="
cat /etc/centos-release
df -h
2. 卸载home分区并调整空间
echo "=== 调整磁盘空间 ==="
umount /home/
fuser -km /home
lvremove -f /dev/mapper/centos-home
vgdisplay
lvextend -L +140G /dev/mapper/centos-root
xfs_growfs /dev/mapper/centos-root
3. 注释fstab中的home挂载
echo "=== 更新fstab配置 ==="
cp /etc/fstab /etc/fstab.backup
sed -i '//home/s/^/# /' /etc/fstab
mount -a
4. 下载Jumpserver安装包
echo "=== 下载Jumpserver ==="
cd /opt/
wget https://resource.fit2cloud.com/jumpserver/installer/releases/download/v4.10.12/jumpserver-installer-v4.10.12.tar.gz
tar -xf jumpserver-installer-v4.10.12.tar.gz
cd jumpserver-installer-v4.10.12/
5. 第一次尝试安装Jumpserver(使用其自带的Docker)
echo "=== 第一次尝试安装Jumpserver(使用自带的Docker) ==="
./jmsctl.sh install
6. 如果安装失败,配置Docker镜像加速并重试
if [ $? -ne 0 ]; then
echo "=== Jumpserver安装遇到问题,配置Docker镜像加速 ==="
# 配置Docker镜像加速
mkdir -p /etc/docker
cp /etc/docker/daemon.json /etc/docker/daemon.json.bak 2>/dev/null || true
cat > /etc/docker/daemon.json << 'EOF'
{
"data-root": "/var/lib/docker",
"live-restore": true,
"log-driver": "json-file",
"log-opts": {
"max-file": "3",
"max-size": "10m"
},
"registry-mirrors": [
"https://docker.1ms.run",
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com"
]
}
EOF
# 重启Docker服务
echo "=== 重启Docker服务 ==="
systemctl daemon-reload
systemctl restart docker
# 再次尝试安装Jumpserver
echo "=== 再次尝试安装Jumpserver ==="
./jmsctl.sh install
fi
7. 启动Jumpserver
echo "=== 启动Jumpserver ==="
./jmsctl.sh start
echo "=== 安装完成 ==="
echo "请检查Jumpserver服务状态:./jmsctl.sh status"
echo "访问地址:https://您的服务器IP"
将脚本保存为 install_jumpserver.sh
chmod +x install_jumpserver.sh
./install_jumpserver.sh
本文来自博客园,作者:cjh502,转载请注明原文链接:https://www.cnblogs.com/cjh502/p/19224351

浙公网安备 33010602011771号