当前位置:首页>python>借助Docker离线搭建银河麒麟Python 环境(二):Docker 打包带依赖的 环境

借助Docker离线搭建银河麒麟Python 环境(二):Docker 打包带依赖的 环境

  • 2026-07-02 16:45:33
借助Docker离线搭建银河麒麟Python 环境(二):Docker 打包带依赖的 环境

摘要:

国产化替代浪潮下,很多项目需要部署在麒麟 V10 (飞腾处理器aarch64上运行。这些系统通常处于内网环境,无法直接联网安装 Python 依赖。本系列文章提供一套完整方案,在 Windows 上借助 Docker 模拟 aarch64 环境,完成 Python 版本升级、依赖下载、依赖编译,将产物拷贝到麒麟上部署。

这篇博文介绍:在 Docker 容器中安装项目所需的全部纯 Python 依赖,打包成一体的 tar.gz,实现"解压即有全部依赖"。同时介绍在 PyCharm 中配置虚拟环境的正确方式

本系列包含四篇文章:

第 1 篇docker环境准备和升级 Python版本
第 2 篇(本文)Docker 打包带依赖的 Python 环境
第 3 篇:Docker 编译 PyQt5 + PyQt5 运行时库打包
上文回顾

在第一篇中,们在 Windows 上搭建了 Docker aarch64 环境,使用 debian:11-slim 基础镜像 + python-build-standalone 预编译包,成功将 Python 3.10.11 打包为 python310_arm64.tar.gz,并在麒麟 V10 上解压即用。

但那个环境只有 Python 解释器和 pip,没有任何第三方依赖。如果项目需要 pysnmprequestspyinstaller 等包,还需要在麒麟上逐个离线安装,非常繁琐。

本文聚焦:在 Docker 容器中安装项目所需的全部纯 Python 依赖,打包成一体的 tar.gz,实现"解压即有全部依赖"。同时介绍在 PyCharm 中配置虚拟环境的正确姿势。

特别说明:本人不论在编程还是麒麟系统的使用都是新手,文章供大家讨论,如果大家还有更好、更方便的方法请大家留言指出!

一、采用 Docker 的必要性

离线部署 Python 依赖,通常思路是在有网络的机器上把依赖包下载为 .whl 文件,拷贝到离线机器上安装。但这个"有网络的机器"是 Windows(x86_64)还是 Docker 容器(aarch64),结果差异其实挺大的。

以下是同一组依赖的实测对比:

# Windows 方式(x86_64 机器,指定 aarch64 平台参数)pip download -d D:\wheels --platform manylinux2014_aarch64 --python-version 3.8 --abi cp38 --only-binary=:all: pysnmp requests certifi idna pyasn1-modules urllib3 charset-normalizer pyinstaller# Docker 方式(真实 aarch64 容器)docker run --rm --platform linux/arm64 -v D:\wheels_docker:/output python:3.8-slim bash -c "pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/ && pip download -d /output pysnmp requests certifi idna pyasn1-modules urllib3 charset-normalizer pyinstaller"

Windows 下载结果(15 个文件)

altgraph-0.17.5-py2.py3-none-any.whlcertifi-2026.6.17-py3-none-any.whlcharset_normalizer-3.4.7-cp38-cp38-manylinux2014_aarch64.whlidna-3.15-py3-none-any.whlpackaging-26.2-py3-none-any.whlpefile-2024.8.26-py3-none-any.whl# ← 麒麟用不到(Windows 专用)pyasn1-0.6.3-py3-none-any.whlpyasn1_modules-0.4.2-py3-none-any.whlpyinstaller-6.21.0-py3-none-manylinux2014_aarch64.whlpyinstaller_hooks_contrib-2026.6-py3-none-any.whlpysnmp-7.1.5-py3-none-any.whlpywin32_ctypes-0.2.3-py3-none-any.whl# ← Windows 专用,麒麟用不到requests-2.32.4-py3-none-any.whlsetuptools-75.3.4-py3-none-any.whlurllib3-2.2.3-py3-none-any.whl

Docker 容器下载结果(15 个文件)

altgraph-0.17.5-py2.py3-none-any.whlcertifi-2026.6.17-py3-none-any.whlcharset_normalizer-3.4.7-cp38-cp38-manylinux2014_aarch64.whlidna-3.15-py3-none-any.whlimportlib_metadata-8.5.0-py3-none-any.whl#← 依赖完整!packaging-26.2-py3-none-any.whlpyasn1-0.6.3-py3-none-any.whlpyasn1_modules-0.4.2-py3-none-any.whlpyinstaller-6.21.0-py3-none-manylinux2014_aarch64.whlpyinstaller_hooks_contrib-2026.6-py3-none-any.whlpysnmp-7.1.5-py3-none-any.whlrequests-2.32.4-py3-none-any.whlsetuptools-75.3.4-py3-none-any.whlurllib3-2.2.3-py3-none-any.whlzipp-3.20.2-py3-none-any.whl#← 依赖完整!

对比上述的文件,虽然都是15个文件,但是采用docker下载,依赖更为完整。

 对比维度
Windows 下载
Docker 容器下载
依赖完整性
❌ 缺失 importlib-metadatazipp
✅ 完整无遗漏
冗余文件
❌ 含 pefilepywin32-ctypes(Windows 专用)
✅ 零冗余
安装成功率
❌ 安装 pyinstaller 时可能报错缺少依赖
✅ 一次成功
操作复杂度
需手动指定 5 个参数
无需任何平台参数

主要的原因在于,Windows 的 pip 在指定 --platform   manylinux2014_aarch64 时,依赖解析存在已知局限:某些间接依赖(如 importlib-metadata → zipp)在跨平台解析时可能被跳过。而 Docker 容器运行在真实的 aarch64 Linux 内核上,pip 的依赖解析 100% 准确

上述问题是我采用docker下载python依赖的主要动因。下载完的依赖包,可以拷贝到麒麟系统进行安装,也可以在 Docker 容器里 pip install,然后把整个 Python 环境重新打包。这样麒麟上解压即有全部依赖,一步到位。

二、采用 Docker 下载和打包方法

2.1 判断依赖包类型

在开始之前,先了解如何判断一个包是否需要特殊处理。Python 包分三种:

类型
wheel 文件名特征
处理方式
纯 Python
py3-none-any.whl
全平台通用,直接 pip install
aarch64 wheel
manylinux...aarch64.whl
需在 aarch64 环境安装
需编译
只有 .tar.gz 源码
需要 C 编译器和开发库

判断方法:浏览器打开 https://pypi.org/simple/包名/ ,Ctrl+F 搜索:

    搜 none-any → 纯 Python,全平台通用

    搜 aarch64 → 有 aarch64预编译 wheel

    都搜不到 → 需要源码编译(下一篇会专门讲)

    我的项目涉及的 pysnmprequestscertifiidna 等都是纯 Python 包,直接用 pip 安装即可。

    2.2  下载依赖并打包python

    首先是启动容器,如果你第一篇的容器还在运行,可以用 docker ps 查看容器 ID

    ,任何直接进入:

    docker exec -it 容器ID bash

    如果容器已退出,重新启动一个:

    docker run --rm -it --platform linux/arm64 -v D:\pytq-test:/output debian:11-slim bash
    然后重新安装 Python 3.10(两步即可):
    sed -'s/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.listapt-get updatetar -xzf /output/cpython-3.10.11+20230507-aarch64-unknown-linux-gnu-install_only.tar.gz -/usr/local --strip-components=1
    安装项目依赖:
    # 配置 pip 国内源pip3.10 config set global.index-url https://mirrors.aliyun.com/pypi/simple/# 安装项目所需的纯 Python 依赖pip3.10 install pysnmp requests certifi idna pyasn1-modules urllib3 charset-normalizer

    输出:

    Looking in indexes: https://mirrors.aliyun.com/pypi/simple/Collecting pysnmp  Downloading pysnmp-7.1.27-py3-none-any.whl (344 kB)Collecting requests  Downloading requests-2.34.2-py3-none-any.whl (73 kB)...Successfully installed certifi-2026.6.17 charset-normalizer-3.4.7 idna-3.18    pyasn1-0.6.3 pyasn1-modules-0.4.2 pysnmp-7.1.27 requests-2.34.2 urllib3-2.7.0

    验证依赖

    python3.10 -c "import pysnmp, requests; print('依赖安装成功')"#输出:依赖安装成功

    重新打包 Python 环境

    cd /usr/localtar -czf /output/python310_full_arm64.tar.gz bin include lib sharels -lh /output/python310_full_arm64.tar.gz

    输出:

    -rw-r--r-- 1 root root 28M Jun 24 10:49 /output/python310_full_arm64.tar.gz

    注意:如果 /output 下已经有第一篇生成的同名文件,此操作会覆盖它。新文件包含了 Python 3.10 + 所有依赖。

    退出容器

    exit

    采用这种方法打包的文件,和未安装依赖直接打包的区别:

    打包前(/usr/local):├── bin/│   ├── python3.10      # Python 解释器│   └── pip3.10         # 包管理器└── lib/    └── python3.10/        └── site-packages/                    └── pip/    # 只有 pip打包后(pip install 之后):├── bin/│   ├── python3.10│   └── pip3.10└── lib/    └── python3.10/            └── site-packages/                 ├── pip/                 ├── pysnmp/              # ← 新增                 ├── requests/            # ← 新增                 ├── certifi/             # ← 新增                 ├── idna/                # ← 新增                  ├── pyasn1/              # ← 新增                 ├── pyasn1_modules/      # ← 新增                 ├── urllib3/             # ← 新增                 ├── charset_normalizer/  # ← 新增                  └── ...                  # ← 全部依赖

    2.3 单独下载 wheel 包的方式

    如果你的使用场景是不想打包整个 Python 环境,只想下载依赖的 wheel 文件然后离线安装,也可以单独下载。

    docker run --rm --platform linux/arm64 -v D:\wheels:/output python:3.10-slim bash -c "pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/ && pip download -d /output pysnmp requests certifi idna pyasn1-modules urllib3 charset-normalizer pyinstaller"

    三、在麒麟系统部署

    3.1  麒麟上离线安装 wheel

    将下载好的 whl 文件夹拷贝到麒麟(如 /opt/wheels/),执行:

    pip install --no-index --find-links=/opt/wheels pysnmp requests certifi idna pyasn1-modules pyinstaller

    pip 会自动解析依赖链,按正确顺序安装所有包。

    3.2  部署带依赖的 Python 环境

    将新的 python310_full_arm64.tar.gz 拷贝到麒麟:

    # 1. 如果已有旧版本,先清理sudo rm -rf /opt/python310# 2. 创建目录并解压sudo mkdir -p /opt/python310sudo tar -xzf python310_full_arm64.tar.gz -C /opt/python310# 3. 创建软链接(可选)sudo ln -sf /opt/python310/bin/python3.10 /usr/local/bin/python3.10sudo ln -sf /opt/python310/bin/pip3.10 /usr/local/bin/pip3.10# 4. 验证 Pythonpython3.10 --version# 输出: Python 3.10.11# 5. 验证依赖python3.10 -c "import pysnmp, requests; print('依赖安装成功')"# 输出: 依赖安装成功

    3.3 PyCharm 配置方法

    在麒麟上安装了 Python 3.10 环境后,需要在 PyCharm 中配置项目使用该环境。

    方式一:直接使用现有环境

    1. PyCharm → File → Settings → Project → Python Interpreter

    2. 点击右侧齿轮图标 → Add...

    3. 选择 Existing environment(现有环境)

    4. 浏览选择 /opt/python310/bin/python3.10

    5. 点击 OK,PyCharm 自动识别环境中所有依赖

    ⚠️ 注意:此方式下,在 PyCharm 中使用 pip install 安装的新包会直接写入 /opt/python310 目录,影响该基础环境。如果多个项目共用此环境,可能造成依赖冲突。推荐使用方式二。

    方式二:创建虚拟环境并继承全局依赖

    1. PyCharm → File → Settings → Project → Python Interpreter

    2. 点击右侧齿轮图标 → Add...

    3. 选择 New environment using → Virtualenv

    4. Base interpreter 浏览选择 /opt/python310/bin/python3.10

    5. ✅ 勾选 "Inherit global site-packages"(继承全局包,关键步骤!)

    6. 点击 OK

    ⚠️ 注意:项目可以使用 /opt/python310 中已有的 pysnmp、requests 等依赖(通过继承)。项目新增的依赖安装在虚拟环境(venv)中,不会污染基础环境。不同项目可以有不同的依赖版本,互不干扰。

    下篇文章预告

    本文解决了纯 Python 依赖的打包问题。但项目中如果使用了 PyQt5 这类 C++ 扩展呢?PyQt5 官方从未发布 aarch64 的预编译 wheel,必须从源码编译。而且编译后的 .so 文件依赖 Qt5 运行时库,麒麟 V10 没有自带 Qt5,部署时还会遇到 undefined symbol 和 libmd4c.so.0: cannot open 等错误。下一篇将完整演示:在 Docker 中编译 PyQt5 + 打包 Qt5 运行时库及全部间接依赖,以及如何在麒麟上安全部署,不污染系统环境。

    最新文章

    随机文章

    基本 文件 流程 错误 SQL 调试
    1. 请求信息 : 2026-07-02 23:31:00 HTTP/2.0 GET : https://f.mffb.com.cn/a/502540.html
    2. 运行时间 : 1.137397s [ 吞吐率:0.88req/s ] 内存消耗:4,830.38kb 文件加载:140
    3. 缓存信息 : 0 reads,0 writes
    4. 会话信息 : SESSION_ID=4bebe92db31a4bb2a100269ed684815a
    1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
    2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
    3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
    4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
    5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
    6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
    7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
    8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
    9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
    10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
    11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
    12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
    13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
    14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
    15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
    16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
    17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
    18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
    19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
    20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
    21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
    22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
    23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
    24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
    25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
    26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
    27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
    28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
    29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
    30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
    31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
    32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
    33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
    34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
    35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
    36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
    37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
    38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
    39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
    40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
    41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
    42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
    43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
    44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
    45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
    46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
    47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
    48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
    49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
    50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
    51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
    52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
    53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
    54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
    55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
    56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
    57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
    58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
    59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
    60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
    61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
    62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
    63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
    64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
    65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
    66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
    67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
    68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
    69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
    70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
    71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
    72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
    73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
    74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
    75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
    76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
    77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
    78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
    79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
    80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
    81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
    82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
    83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
    84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
    85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
    86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
    87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
    88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
    89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
    90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
    91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
    92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
    93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
    94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
    95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
    96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
    97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
    98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
    99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
    100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
    101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
    102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
    103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
    104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
    105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
    106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
    107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
    108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
    109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
    110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
    111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
    112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
    113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
    114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
    115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
    116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
    117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
    118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
    119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
    120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
    121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
    122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
    123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
    124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
    125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
    126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
    127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
    128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
    129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
    130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
    131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
    132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
    133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
    134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
    135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
    136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
    137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
    138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
    139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
    140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
    1. CONNECT:[ UseTime:0.000569s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
    2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000731s ]
    3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.014272s ]
    4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.034723s ]
    5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001066s ]
    6. SELECT * FROM `set` [ RunTime:0.020567s ]
    7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000835s ]
    8. SELECT * FROM `article` WHERE `id` = 502540 LIMIT 1 [ RunTime:0.134484s ]
    9. UPDATE `article` SET `lasttime` = 1783006261 WHERE `id` = 502540 [ RunTime:0.035615s ]
    10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.007456s ]
    11. SELECT * FROM `article` WHERE `id` < 502540 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.069666s ]
    12. SELECT * FROM `article` WHERE `id` > 502540 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.016962s ]
    13. SELECT * FROM `article` WHERE `id` < 502540 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.541365s ]
    14. SELECT * FROM `article` WHERE `id` < 502540 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.100316s ]
    15. SELECT * FROM `article` WHERE `id` < 502540 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.057418s ]
    1.140111s