Развертывание Label Studio на Ubuntu 24.04

Label Studio помогает размечать текст, изображения, аудио и видео. Вы можете использовать его для рабочих процессов машинного обучения и командного взаимодействия.

В этом руководстве показано, как развернуть Label Studio с помощью Docker Compose и Traefik. Traefik обеспечивает автоматический HTTPS для вашего домена.

Выполните следующие шаги для настройки.

  1. Подготовьте директорию

Выполните эти команды, чтобы создать папку для вашего проекта:

$ mkdir ~/labelstudio $ cd ~/labelstudio

  1. Настройте переменные окружения

Создайте файл .env:

$ nano .env

Добавьте ваш домен и email:

DOMAIN=labelstudio.example.com LETSENCRYPT_EMAIL=admin@example.com

  1. Создайте файл Docker Compose

Создайте файл с именем docker-compose.yaml:

$ nano docker-compose.yaml

Вставьте следующую конфигурацию:

services:
  traefik:
    image: traefik:v3.6
    container_name: traefik
    command:
      - "--providers.docker=true"
      - "--providers.docker.exposedbydefault=false"
      - "--entrypoints.web.address=:80"
      - "--entrypoints.websecure.address=:443"
      - "--entrypoints.web.http.redirections.entrypoint.to=websecure"
      - "--entrypoints.web.http.redirections.entrypoint.scheme=https"
      - "--certificatesresolvers.letsencrypt.acme.httpchallenge=true"
      - "--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=web"
      - "--certificatesresolvers.letsencrypt.acme.email=${LETSENCRYPT_EMAIL}"
      - "--certificatesresolvers.letsencrypt.acme.storage=/letsencrypt/acme.json"
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - "./letsencrypt:/letsencrypt"
      - "/var/run/docker.sock:/var/run/docker.sock:ro"
    restart: unless-stopped

  labelstudio:
    image: heartexlabs/label-studio:1.23.0
    container_name: labelstudio
    expose:
      - "8080"
    environment:
      - DJANGO_ALLOWED_HOSTS=${DOMAIN}
      - CSRF_TRUSTED_ORIGINS=https://${DOMAIN}
      - USE_X_FORWARDED_HOST=true
      - SECURE_PROXY_SSL_HEADER=HTTP_X_FORWARDED_PROTO,https
    volumes:
      - ./data:/label-studio/data
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.labelstudio.rule=Host(`${DOMAIN}`)"
      - "traefik.http.routers.labelstudio.entrypoints=websecure"
      - "traefik.http.routers.labelstudio.tls.certresolver=letsencrypt"
      - "traefik.http.services.labelstudio.loadbalancer.server.port=8080"
    restart: unless-stopped
  1. Настройка прав доступа и запуск

Создайте папку data:

$ mkdir data $ sudo chown :0 data

Запустите сервисы:

$ docker compose up -d

  1. Проверка настройки

Проверьте, запущены ли ваши контейнеры:

$ docker compose ps

Перейдите к вашему инструменту по адресу https://labelstudio.example.com. Зарегистрируйтесь, чтобы создать учетную запись администратора.

Следующие шаги для вашего проекта:

Источник: https://dev.to/vultr/deploying-label-studio-open-source-data-labeling-platform-on-ubuntu-2404-5bd0

Дополнительное обучающее сообщество: https://t.me/GyaanSetuAi