#!/bin/bash echo "Looking Glass 安装脚本 (修复版)" # 检查 Docker if ! command -v docker &> /dev/null; then echo "错误: 请先安装 Docker" exit 1 fi # 停止并删除旧容器 docker stop looking-glass 2>/dev/null docker rm looking-glass 2>/dev/null # 方法1: 使用特权模式 echo "尝试方法1: 使用特权模式..." docker run -d \ --name looking-glass \ --privileged \ -p 801:80 \ --restart unless-stopped \ wikihostinc/looking-glass-server sleep 2 # 检查是否成功 if docker ps | grep -q looking-glass; then echo "✓ 方法1成功!" else echo "方法1失败,尝试方法2..." docker rm looking-glass 2>/dev/null # 方法2: 使用 systemd 模式的 cgroup docker run -d \ --name looking-glass \ --cgroupns=host \ --volume /sys/fs/cgroup:/sys/fs/cgroup:ro \ -p 801:80 \ --restart unless-stopped \ wikihostinc/looking-glass-server sleep 2 fi # 检查最终状态 if docker ps | grep -q looking-glass; then echo "✓ 安装成功!" echo "访问地址: http://$(hostname -I | awk '{print $1}'):801" else echo "安装失败,尝试方法3: 使用简单模式..." docker rm looking-glass 2>/dev/null # 方法3: 最简模式 docker run -d \ --name looking-glass \ -p 801:80 \ wikihostinc/looking-glass-server sleep 2 if docker ps | grep -q looking-glass; then echo "✓ 方法3成功!" echo "访问地址: http://$(hostname -I | awk '{print $1}'):801" else echo "❌ 所有方法都失败,请检查系统日志:" docker logs looking-glass fi fi