FROM heartexlabs/label-studio:hf-latest ################################################################################ # # How to Disable Public Account Creation # -------------------------------------- # By default this space allows for the unrestricted creation of new accounts # will full access to all projects and data. This is great for trying out # Label Studio and collaborating on projects, but you may want to restrict # access to your space to only authorized users. Uncomment the following line # to disable public account creation for this space. # # ENV LABEL_STUDIO_DISABLE_SIGNUP_WITHOUT_LINK=true # # Set secrets in your space to create an inital user, and log in with your # provided username and password. Do not set these in your Dockerfile, as they # globally visible on a public space. # # LABEL_STUDIO_USERNAME # LABEL_STUDIO_PASSWORD # # You will need to provide new users with an invitation link to join the space. # ################################################################################ ################################################################################ # # How to Enable Persistent Storage for Label Studio in Hugging Face Spaces # ------------------------------------------------------------------------ # # By default this space stores all project configuration and data annotations # in local storage with sqlite. If the space is reset, all configuration and # annotation data in the space will be lost. You can enable configuration # persistence through one of two methods: # # 1) Attaching an HF Storage Bucket for persisting the SQLite database and # media uploads across restarts (recommended). # 2) Connecting an external Postgres database for saving project and annotation # settings, and cloud by connecting cloud storage for tasks. # ################################################################################ ################################################################################ # # How to Enable Persistence with HF Storage Buckets # -------------------------------------------------- # # HF Storage Buckets provide persistent object storage that can be # mounted directly into your Space. Label Studio will write its SQLite # database and media uploads into the mounted bucket, so everything # survives restarts. # # 1. Create a bucket: hf buckets create /label-studio-data # 2. Attach it in Space Settings → Storage Buckets, mount path: /data # 3. Set Space Variables: # LABEL_STUDIO_BASE_DATA_DIR=/data # STORAGE_PERSISTENCE=1 # 4. (Recommended) Set a SECRET_KEY Space Secret to keep user sessions # alive across restarts. # 5. Factory rebuild the Space. # # See https://huggingface.co/docs/hub/storage-buckets for more details. # ################################################################################ ################################################################################ # # How to Enable Configuration Persistence with Postgres # ----------------------------------------------------- # # Set the following secret variables to match your own hosted instance of # Postgres. We strongly recommend setting these as secrets to prevent leaking # information about your database service to the public in your spaces # definition. # # ENV DJANGO_DB=default # ENV POSTGRE_NAME= # ENV POSTGRE_PORT= # ENV POSTGRE_USER= # ENV POSTGRE_PASSWORD= # ENV POSTGRE_PORT= # ENV POSTGRE_HOST= # # Uncomment the following line or set the following Space variable to remove # the warning about ephemeral storage # # ENV STORAGE_PERSISTENCE=1 # # Note that you will need to connect cloud storage to host data items that you # want to annotate, as local storage will not be preserved across a space reset. # # # How to Enable Cloud Storage # --------------------------- # By default the only data storage enabled for this space is local. In the case # of a space reset, all data will be lost. To enable permanent storage, you # must enable a cloud storage connector. We also strongly recommend enabling # configuration persistence to preserve project data, annotations, and user # settings. Choose the appropriate cloud connector and configure the secrets # for it. # # Amazon S3 # ========= # STORAGE_TYPE=s3 # STORAGE_AWS_ACCESS_KEY_ID="" # STORAGE_AWS_SECRET_ACCESS_KEY="" # STORAGE_AWS_BUCKET_NAME="" # STORAGE_AWS_REGION_NAME="" # STORAGE_AWS_FOLDER="" # # Google Cloud Storage # ==================== # # STORAGE_TYPE=gcs # STORAGE_GCS_BUCKET_NAME="" # STORAGE_GCS_PROJECT_ID="" # STORAGE_GCS_FOLDER="" # GOOGLE_APPLICATION_CREDENTIALS="/opt/heartex/secrets/key.json" # # Azure Blob Storage # ================== # # STORAGE_TYPE=azure # STORAGE_AZURE_ACCOUNT_NAME="" # STORAGE_AZURE_ACCOUNT_KEY="" # STORAGE_AZURE_CONTAINER_NAME="" # STORAGE_AZURE_FOLDER="" # ################################################################################ # The upstream base image runs as UID 1001. HF Storage Bucket mounts currently # require root to write. This can be removed once bucket mounts support # non-root UIDs natively. USER root CMD exec label-studio --host=$SPACE_HOST