本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

requests Docker 镜像下载 - 轩辕镜像

requests 镜像详细信息和使用指南

requests 镜像标签列表和版本信息

requests 镜像拉取命令和加速下载

requests 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

requests
blairy/requests

requests 镜像详细信息

requests 镜像标签列表

requests 镜像使用说明

requests 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

包含最新稳定版Requests和Beautiful Soup的Python环境,适用于快速进行网络请求与网页解析开发。
0 次下载activeblairy镜像

requests 镜像详细说明

requests 使用指南

requests 配置说明

requests 官方文档

Python Requests 镜像文档

1. 镜像概述与主要用途

本镜像是一个基于 Alpine Linux 的轻量级 Python 运行环境,预装 Python3 及最新稳定版的 Requests(HTTP 库)和 Beautiful Soup(HTML/XML 解析库)。主要用于需要通过 Python 进行网络请求发送(如 API 调用、网页爬取)和 HTML/XML 内容解析的场景,提供安全、精简且易于扩展的执行环境。

2. 核心功能与特性

2.1 轻量高效

  • 基于 Alpine Linux 构建,镜像体积小,资源占用低,启动速度快。

2.2 安全加固

  • 非 root 运行:容器默认使用专用非特权用户 python 执行,避免 root 权限暴露风险。
  • 权限最小化:删除 root 用户相关文件(如 /root 目录、/etc/crontabs/root)及敏感权限配置,仅保留必要系统工具。

2.3 依赖更新

  • 定期构建更新,确保 Requests、Beautiful Soup 等核心库为最新稳定版本,修复已知漏洞。

2.4 完整工具链

  • 包含 py3-pip(Python 包管理工具)、bash(交互 shell)及基础系统工具(如 shadowutil-linux-misc),支持扩展安装其他 Python 依赖。

3. 使用场景与适用范围

  • 网络爬虫开发:利用 Requests 发起 HTTP/HTTPS 请求,结合 Beautiful Soup 解析网页数据。
  • API 测试与调用:通过 Requests 库快速实现 RESTful API 调用、响应处理及自动化测试。
  • 数据采集:从网页或 API 接口获取结构化/非结构化数据并进行解析处理。
  • 轻量级 Python 脚本运行:需网络请求或 HTML 解析能力的小型 Python 脚本(如定时任务、数据同步工具)。

4. 使用方法与配置说明

4.1 获取镜像

4.1.1 从 Docker Hub 拉取(推荐)

bash
docker pull docker.io/blairy/requests:latest

4.1.2 本地构建

若需基于源码构建,可使用以下步骤:

  1. 保存 Dockerfile 至本地目录(如 ./dockerfile)。
  2. 执行构建命令:
    bash
    docker build --compress --pull -t python-requests:local ./dockerfile
    

4.2 运行容器

容器默认入口点为 python,支持直接执行 Python 命令或挂载外部脚本文件。

4.2.1 直接执行 Python 命令

示例:运行 Python 交互式终端

bash
docker run --rm -it docker.io/blairy/requests:latest

4.2.2 执行本地脚本

将本地 Python 脚本(如 crawler.py)挂载至容器内用户目录 /home/python,并执行:

bash
# 假设脚本位于当前目录 ./scripts/crawler.py
docker run --rm -v $(pwd)/scripts:/home/python/scripts docker.io/blairy/requests:latest /home/python/scripts/crawler.py

4.2.3 安装额外依赖

容器内置 pip,可通过以下方式安装其他 Python 库(需在运行时指定命令覆盖入口点):

bash
# 安装 pandas 库并保留依赖(需挂载持久化目录存储依赖)
docker run --rm -v $(pwd)/deps:/home/python/.local docker.io/blairy/requests:latest -m pip install --user pandas

4.3 容器配置说明

  • 用户权限:容器内默认用户为 python(UID/GID 未显式指定,由系统自动分配),仅对 /home/python 目录有读写权限,挂载外部目录时需确保权限匹配(可通过 chown -R 1000:1000 ./local_dir 调整本地目录权限,假设 python 用户 UID/GID 为 1000)。
  • 网络配置:默认使用桥接网络,如需访问宿主机服务或其他容器,可通过 --network 参数指定网络模式(如 --network host)。

5. Dockerfile 解析

以下为镜像构建逻辑说明,关键步骤如下:

dockerfile
# 基于最新 Alpine Linux 构建,确保基础镜像精简
FROM alpine:latest

# 安装核心依赖:Python3、Requests、Beautiful Soup 及基础工具
RUN \
  apk update --no-cache \
  && apk add \
    py3-pip \                  # Python 包管理工具
    py3-beautifulsoup4 \       # HTML/XML 解析库
    py3-requests \             # HTTP 请求库
    bash \                     # 交互式 shell
    shadow \                   # 用户管理工具(useradd 等)
    util-linux-misc \          # 系统工具(如 chown) \
  && apk upgrade               # 升级已安装包至最新版本

# 切换至 bash shell,支持数组等高级语法
SHELL ["/bin/bash", "-c"]

# 安全加固:清理 root 权限,创建非 root 用户
RUN \
  mkdir /home/python \                     # 创建用户主目录
  && declare -a files=('/etc/shadow' '/etc/passwd' '/etc/group' 'sysctl.conf') \
  && for file in "${files[@]}"; do echo "" > $file; done \  # 清空敏感系统文件
  && rm -rf /root /etc/crontabs/root /sbin/apk \  # 删除 root 目录及 apk 包管理工具(限制后续修改)
  && useradd python -d /home/python -s /bin/bash \  # 创建非 root 用户 python
  && chown -R python /home/python/ \        # 设置用户目录权限
  && chmod -R 755 /home/python

# 切换至非 root 用户运行
USER python

# 入口点:直接启动 Python 解释器
ENTRYPOINT ["/usr/bin/python"]

6. 部署示例

6.1 docker-compose 配置示例

以下为基于 docker-compose.yml 的部署示例,用于运行一个定时数据采集脚本:

yaml
version: '3.8'
services:
  data-crawler:
    image: docker.io/blairy/requests:latest
    volumes:
      - ./scripts:/home/python/scripts  # 挂载本地脚本目录
      - ./deps:/home/python/.local      # 持久化安装的依赖库
    command: /home/python/scripts/定时采集脚本.py  # 覆盖默认入口点,执行指定脚本
    user: "1000:1000"  # 匹配容器内 python 用户的 UID/GID(需根据实际情况调整)
    restart: unless-stopped  # 异常退出后自动重启

启动命令:

bash
docker-compose up -d

7. 注意事项

  • 依赖持久化:通过 pip install --user 安装的依赖默认存储于 /home/python/.local,需挂载该目录至宿主机以避免容器重建后依赖丢失。
  • 安全限制:容器内已删除 apk 工具,无法通过包管理器安装系统依赖,如需额外系统工具(如 curl),需基于原 Dockerfile 修改并重新构建镜像。
  • 资源限制:建议运行时通过 --memory--cpus 参数限制容器资源使用,避免影响宿主机其他服务。

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"