🔄 卡若AI 同步 2026-02-22 10:35 | 更新:金仓、水溪整理归档、卡土、总索引与入口、运营中枢参考资料、运营中枢工作台、运营中枢 | 排除 >20MB: 8 个

This commit is contained in:
2026-02-22 10:35:49 +08:00
parent d07d6bdf47
commit b81c339e37
12 changed files with 335 additions and 3 deletions

View File

@@ -0,0 +1,60 @@
#!/bin/bash
# www.lytiao.com Docker 部署 - 存客宝宝塔终端完整版
# 在 https://42.194.245.239:9988 → 终端 复制整段粘贴执行
# 8080 被 frps 占用,使用 8090拉取失败时先配置镜像加速
set -e
DIR="/opt/lytiao_docker"
SRC="/www/wwwroot/www.lytiao.com"
echo "========== www.lytiao.com Docker 部署 =========="
# 1. Docker 镜像加速(避免拉取超时)
echo ">>> 1. 配置 Docker 镜像加速..."
mkdir -p /etc/docker
if [ ! -s /etc/docker/daemon.json ] || ! grep -q registry-mirrors /etc/docker/daemon.json 2>/dev/null; then
echo '{"registry-mirrors":["https://docker.m.daocloud.io","https://docker.1ms.run"]}' > /etc/docker/daemon.json
systemctl restart docker 2>/dev/null || true
sleep 5
fi
# 2. 创建配置php:7.4 更易拉取,与 7.1 兼容)
echo ">>> 2. 创建 Docker 配置..."
mkdir -p "$DIR"
cat > "$DIR/Dockerfile" << 'DF'
FROM php:7.4-apache
RUN a2enmod rewrite
WORKDIR /var/www/html
EXPOSE 80
DF
cat > "$DIR/docker-compose.yml" << 'DC'
services:
lytiao-web:
build: .
container_name: lytiao-www
ports:
- "8090:80"
volumes:
- ./www:/var/www/html
restart: unless-stopped
DC
# 3. 复制网站
echo ">>> 3. 复制网站文件..."
rm -rf "$DIR/www"
cp -a "$SRC" "$DIR/www"
# 4. 构建并启动
echo ">>> 4. 构建并启动(约 25 分钟)..."
cd "$DIR"
docker compose down 2>/dev/null || true
docker compose up -d --build
# 5. 验证
echo ">>> 5. 验证..."
docker ps -a --filter name=lytiao
curl -sI -o /dev/null -w "本机 8090: HTTP %{http_code}\n" http://127.0.0.1:8090/ 2>/dev/null || echo "curl 待重试"
echo ""
echo "✅ 完成。访问: http://42.194.245.239:8090"
echo " 宝塔 Docker → 刷新容器列表 可见 lytiao-www"

View File

@@ -39,7 +39,7 @@ DIR="/opt/lytiao_docker"
SRC="/www/wwwroot/www.lytiao.com"
mkdir -p "$DIR"
cat > "$DIR/Dockerfile" << 'EOF'
FROM php:7.1-apache
FROM php:7.4-apache
RUN a2enmod rewrite
WORKDIR /var/www/html
EXPOSE 80
@@ -79,8 +79,8 @@ def main():
req.CommandName = "CKB_lytiao_Quick"
r = client.RunCommand(req)
print("已下发(精简构建,约 2 分钟InvocationId:", r.InvocationId)
print("等待 150s 获取结果...")
time.sleep(150)
print("等待 240s 获取结果...")
time.sleep(240)
req2 = models.DescribeInvocationTasksRequest()
f = models.Filter(); f.Name, f.Values = "invocation-id", [r.InvocationId]
req2.Filters = [f]