ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Label Studio 本地部署实战:Docker、pip 与源码调试三种路径怎么选

2026/9/4 11:24:23 拓冰建站 浏览量
Label Studio 本地部署实战:Docker、pip 与源码调试三种路径怎么选 Label Studio 本地部署实战Docker、pip 与源码调试三种路径怎么选【免费下载链接】label-studioLabel Studio is a multi-type data labeling and annotation tool with standardized output format项目地址: https://gitcode.com/GitHub_Trending/la/label-studio本文聚焦Label Studio 安装、本地运行与关键配置适合两类读者想快速在服务器上拉起一个可用标注服务的运维同学以及需要在源码层面调试、二次开发的 Python 开发者。读完你能完成三件事用 Docker Compose 起一个带 PostgreSQL 的生产级栈、用 pip 或 conda 在本地机器跑通服务、进入源码模式做数据库迁移并启动调试服务器。安装前准备先做这三项检查动手之前花两分钟确认运行环境能避开大多数启动失败。Python 版本源码与 pip 安装要求 Python 3.10 及以上上限 4.0 以下。依赖清单可在 pyproject.toml 中核对其中已声明requires-python 3.10,4。端口占用默认服务监听 8080 端口。执行lsof -i:8080检查是否被占用必要时在启动命令中改映射端口。数据目录规划一个持久化目录官方示例用./mydata数据库文件和上传素材都会落在这里。如果机器上有 Docker优先走容器路线没有 Docker、只是临时跑个标注任务pip 最省事要改代码、跑测试再进源码模式。用 Docker Compose 部署 Label Studio 完整服务栈这是最接近生产环境的组合Label Studio 应用 Nginx 反向代理 PostgreSQL 数据库对应 docker-compose.yml。它把默认 SQLite 换成 PostgreSQL并让 Nginx 负责静态资源与上传文件的分发。docker compose up -d执行后后台拉起三个容器。打开http://localhost:8080即可进入注册页首次使用需注册管理员账号。需要本地 S3 存储时叠加 MinIO要验证 S3 存储行为可以在同一栈里加一个本地 MinIO 服务docker compose -f docker-compose.yml -f docker-compose.minio.yml up -dMinIO 的 API 与控制台端口为 9000 / 9009默认账号密码在 docker-compose.minio.yml 里以占位默认值给出生产环境务必通过.env覆盖。若主机没有静态 IP需要在 hosts 文件中为 MinIO 服务名加一条解析记录保证应用容器和浏览器都能访问它。用 pip 或 conda 在本地安装 Label Studio适合本机快速体验无需 Docker。pip 快速安装pip install label-studio label-studio第一条命令安装发行版第二条直接启动服务。启动成功后浏览器访问http://localhost:8080。如需调试输出可再追加参数例如label-studio --log-level DEBUG。conda 环境安装习惯 conda 工作流的用户先建一个隔离环境再装conda create --name label-studio conda activate label-studio conda install psycopg2 pip install label-studiopsycopg2是连接 PostgreSQL 用的驱动在 conda 里装可以避免 pip 编译 C 扩展的麻烦。之后执行label-studio启动即可。源码模式启动 Label Studio迁移、静态文件与调试服务器要改代码或跑测试就从源码运行。先从仓库取代码只读使用git clone https://gitcode.com/GitHub_Trending/la/label-studio cd label-studio安装依赖pip install poetry poetry installpoetry install按 pyproject.toml 与锁文件解析全部依赖比裸 pip 更可控。执行数据库迁移并启动python label_studio/manage.py migrate python label_studio/manage.py collectstatic前一条把数据库结构更新到当前模型版本默认 SQLite 文件生成在工作数据目录下第二条收集前端静态资源。两条都成功后启动开发服务器python label_studio/manage.py runserver开发模式同样监听 8080代码改动后重启进程即可生效。Label Studio 关键运行配置环境变量与存储配置集中在 label_studio/core/settings/ 目录通过环境变量注入最常动的几项变量作用常用取值DJANGO_DB选择数据库后端default跟随环境、postgresql、mysql、sqlitePOSTGRE_HOST/POSTGRE_USER/POSTGRE_PASSWORD/POSTGRE_PORTPostgreSQL 连接参数Compose 栈中已预置指向db服务LABEL_STUDIO_HOST子路径部署时指定访问前缀例如/label-studio反代到非根路径时必填JSON_LOG以 JSON 格式输出日志生产栈中设为1数据库与文件的落盘位置由两个地方决定应用侧挂载./mydata:/label-studio/data含 SQLite 文件与上传素材数据库侧挂载postgres-dataPostgreSQL 数据目录。备份时把这两个卷一起带走即可。常见问题与排查建议页面打不开先docker compose ps确认三个容器都在 running再docker compose logs app看应用日志。8080 端口冲突把 docker-compose.yml 中 nginx 的8080:8085映射改成空闲端口如9000:8085。重启后数据丢失检查./mydata与postgres-data是否仍在原位置卷挂载是否写对。S3 存储连不上 MinIO核对 hosts 解析记录并在存储配置中把端点指到 MinIO 的 9000 端口。想加日志定位问题在 app 服务环境变量中取消LOG_LEVELDEBUG的注释重启栈后观察输出。延伸资源依赖与版本约束pyproject.toml容器编排定义docker-compose.yml、docker-compose.minio.yml本地文档指南docs/source/guide/其中安装与存储相关章节可直接对照本文操作部署辅助脚本deploy/ 下的 nginx 与数据库初始化入口按先跑通、再换存储、后进源码的顺序推进大多数人在半天内就能拥有一个可日常使用的 Label Studio 实例。【免费下载链接】label-studioLabel Studio is a multi-type data labeling and annotation tool with standardized output format项目地址: https://gitcode.com/GitHub_Trending/la/label-studio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考