{"slug": "deploying-label-studio-open-source-data-labeling-platform-on-ubuntu-24-04", "title": "Deploying Label Studio Open-Source Data Labeling Platform on Ubuntu 24.04", "summary": "Label Studio, an open-source data labeling platform, has been deployed on Ubuntu 24.04 using Docker Compose with Traefik for automatic HTTPS and persistent volumes. The setup enables secure annotation of text, images, audio, video, and time series data at a custom domain.", "body_md": "Label Studio is an open-source data labeling platform that supports annotation across text, images, audio, video, and time series, with collaborative workflows and ML-model integrations. This guide deploys Label Studio using Docker Compose with Traefik handling automatic HTTPS and persistent volumes for projects and labels. By the end, you'll have Label Studio serving an annotation workspace securely at your domain.\n\n**1. Create the project directory:**\n\n``` bash\n$ mkdir ~/labelstudio\n$ cd ~/labelstudio\n```\n\n**2. Create the environment file:**\n\n``` bash\n$ nano .env\nDOMAIN=labelstudio.example.com\nLETSENCRYPT_EMAIL=admin@example.com\n```\n\n**1. Create the Compose manifest:**\n\n``` bash\n$ nano docker-compose.yaml\nservices:\n  traefik:\n    image: traefik:v3.6\n    container_name: traefik\n    command:\n      - \"--providers.docker=true\"\n      - \"--providers.docker.exposedbydefault=false\"\n      - \"--entrypoints.web.address=:80\"\n      - \"--entrypoints.websecure.address=:443\"\n      - \"--entrypoints.web.http.redirections.entrypoint.to=websecure\"\n      - \"--entrypoints.web.http.redirections.entrypoint.scheme=https\"\n      - \"--certificatesresolvers.letsencrypt.acme.httpchallenge=true\"\n      - \"--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=web\"\n      - \"--certificatesresolvers.letsencrypt.acme.email=${LETSENCRYPT_EMAIL}\"\n      - \"--certificatesresolvers.letsencrypt.acme.storage=/letsencrypt/acme.json\"\n    ports:\n      - \"80:80\"\n      - \"443:443\"\n    volumes:\n      - \"./letsencrypt:/letsencrypt\"\n      - \"/var/run/docker.sock:/var/run/docker.sock:ro\"\n    restart: unless-stopped\n\n  labelstudio:\n    image: heartexlabs/label-studio:1.23.0\n    container_name: labelstudio\n    expose:\n      - \"8080\"\n    environment:\n      - DJANGO_ALLOWED_HOSTS=${DOMAIN}\n      - CSRF_TRUSTED_ORIGINS=https://${DOMAIN}\n      - USE_X_FORWARDED_HOST=true\n      - SECURE_PROXY_SSL_HEADER=HTTP_X_FORWARDED_PROTO,https\n    volumes:\n      - ./data:/label-studio/data\n    labels:\n      - \"traefik.enable=true\"\n      - \"traefik.http.routers.labelstudio.rule=Host(`${DOMAIN}`)\"\n      - \"traefik.http.routers.labelstudio.entrypoints=websecure\"\n      - \"traefik.http.routers.labelstudio.tls.certresolver=letsencrypt\"\n      - \"traefik.http.services.labelstudio.loadbalancer.server.port=8080\"\n    restart: unless-stopped\n```\n\n**2. Create the data directory with group write access:**\n\n``` bash\n$ mkdir data\n$ sudo chown :0 data\n```\n\n**3. Start the services:**\n\n``` bash\n$ docker compose up -d\n```\n\n**4. Verify the services and view logs:**\n\n``` bash\n$ docker compose ps\n$ docker compose logs\n```\n\n**1.** Open `https://labelstudio.example.com`\n\nand click **Sign Up** to create the first administrator.\n\n**2.** From the dashboard, click **Create Project** and set:\n\n`Sentiment Analysis`\n\n**3.** Click **Save**, then **Import** and paste the sample data:\n\n```\n[\n  {\"text\": \"This product is amazing.\"},\n  {\"text\": \"Worst experience ever.\"}\n]\n```\n\n**4.** Annotate each task, click **Submit**, and confirm the Data Manager shows them as **Completed**.\n\nLabel Studio is running and served securely over HTTPS. From here you can:\n\nFor the full guide with additional tips, visit the original article on ** Vultr Docs**.", "url": "https://wpnews.pro/news/deploying-label-studio-open-source-data-labeling-platform-on-ubuntu-24-04", "canonical_source": "https://dev.to/vultr/deploying-label-studio-open-source-data-labeling-platform-on-ubuntu-2404-5bd0", "published_at": "2026-06-16 20:57:20+00:00", "updated_at": "2026-06-16 21:17:10.206840+00:00", "lang": "en", "topics": ["developer-tools", "machine-learning", "artificial-intelligence"], "entities": ["Label Studio", "Traefik", "Docker Compose", "Ubuntu 24.04", "Heartex Labs", "Vultr"], "alternates": {"html": "https://wpnews.pro/news/deploying-label-studio-open-source-data-labeling-platform-on-ubuntu-24-04", "markdown": "https://wpnews.pro/news/deploying-label-studio-open-source-data-labeling-platform-on-ubuntu-24-04.md", "text": "https://wpnews.pro/news/deploying-label-studio-open-source-data-labeling-platform-on-ubuntu-24-04.txt", "jsonld": "https://wpnews.pro/news/deploying-label-studio-open-source-data-labeling-platform-on-ubuntu-24-04.jsonld"}}