> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/deployment/hi/self-hosted/inference-server/configuration/docker-configuration.md).

# Docker कॉन्फ़िगरेशन विकल्प

इन्फ़ेरेंस सर्वरों में कई कॉन्फ़िगर करने योग्य पैरामीटर होते हैं, जिन्हें आप पर्यावरण चर (environment variables) के साथ सेट करते हैं। किसी पर्यावरण चर को सेट करने के लिए `docker run`, उपयोग करें `-e` फ़्लैग:

```bash
docker run -it --rm -e ENV_VAR_NAME=env_var_value -p 9001:9001 --gpus all roboflow/roboflow-inference-server-gpu:latest
```

यह पृष्ठ उन विकल्पों को कवर करता है जिन्हें आप सबसे अधिक बदलने की संभावना रखते हैं। पूरी सूची के लिए, देखें [पर्यावरण चर](/deployment/hi/self-hosted/inference-server/configuration/environment-variables.md).

## नेटवर्किंग

**`HOST`**: स्ट्रिंग (डिफ़ॉल्ट `0.0.0.0`). HTTP इंटरफेस द्वारा उपयोग किए जाने वाले होस्ट पते को सेट करता है।

**`PORT`**: पूर्णांक (डिफ़ॉल्ट `9001`). HTTP इंटरफेस द्वारा उपयोग किए जाने वाले पोर्ट को सेट करता है।

**`ALLOW_ORIGINS`**: स्ट्रिंग (डिफ़ॉल्ट `*`). सेट करता है `allow_origins` FastAPI के साथ HTTP इंटरफेस के लिए उपयोग किए जाने वाले CORS middleware पर allow\_origins प्रॉपर्टी। कई मान कॉमा से अलग करके दिए जा सकते हैं, उदाहरण के लिए `ALLOW_ORIGINS=orig1.com,orig2.com`.

## इन्फ़ेरेंस व्यवहार

**`CLASS_AGNOSTIC_NMS`**: बूलियन (डिफ़ॉल्ट `False`). डिटेक्शन मॉडलों (ऑब्जेक्ट डिटेक्शन, इंस्टेंस सेगमेंटेशन और इसी तरह के) के लिए डिफ़ॉल्ट non-maximum suppression (NMS) व्यवहार सेट करता है। जब `True`, NMS वर्ग-निरपेक्ष होता है, इसलिए अलग-अलग वर्गों की ओवरलैपिंग डिटेक्शनों को IoU थ्रेशहोल्ड के आधार पर हटाया जा सकता है। जब `False`, केवल उसी वर्ग की ओवरलैपिंग डिटेक्शनों को हटाने के लिए माना जाता है।

**`MAX_CANDIDATES`**: पूर्णांक (डिफ़ॉल्ट `3000`). डिटेक्शन के लिए उम्मीदवारों की अधिकतम संख्या।

**`MAX_DETECTIONS`**: पूर्णांक (डिफ़ॉल्ट `300`). किसी मॉडल द्वारा लौटाई जाने वाली डिटेक्शनों की अधिकतम संख्या।

**`FIX_BATCH_SIZE`**: बूलियन (डिफ़ॉल्ट `False`). जब `True`, बैच आकार इस सर्वर के लिए कॉन्फ़िगर किए गए अधिकतम बैच आकार पर स्थिर कर दिया जाता है।

**`MAX_ACTIVE_MODELS`**: पूर्णांक (डिफ़ॉल्ट `8`). आंतरिक मॉडल मैनेजर द्वारा एक समय में मेमोरी में रखे जाने वाले मॉडलों की अधिकतम संख्या। डिफ़ॉल्ट रूप से, मॉडल क्यू नए मॉडल के लिए जगह बनाते समय सबसे कम हाल में एक्सेस किए गए मॉडल को हटा देती है।

**`NUM_WORKERS`**: पूर्णांक (डिफ़ॉल्ट `1`). HTTP इंटरफेस द्वारा उपयोग किए जाने वाले वर्करों की संख्या।

## CLIP मॉडल विकल्प

**`CLIP_VERSION_ID`**: स्ट्रिंग (डिफ़ॉल्ट `ViT-B-16`). सभी `/clip` रूट्स द्वारा उपयोग किए जाने वाले OpenAI CLIP संस्करण को सेट करता है। उपलब्ध संस्करण हैं `RN101`, `RN50`, `RN50x16`, `RN50x4`, `RN50x64`, `ViT-B-16`, `ViT-B-32`, `ViT-L-14-336px`और `ViT-L-14`.

**`CLIP_MAX_BATCH_SIZE`**: पूर्णांक (डिफ़ॉल्ट `8`). CLIP मॉडल इन्फ़ेरेंस फ़ंक्शनों द्वारा स्वीकार किए जाने वाले अधिकतम बैच आकार को सेट करता है।

## मॉडल कैश

**`MODEL_CACHE_DIR`**: स्ट्रिंग (डिफ़ॉल्ट `/tmp/cache`). रूट मॉडल कैश डायरेक्टरी के लिए कंटेनर पथ सेट करता है।

**`TENSORRT_CACHE_PATH`**: स्ट्रिंग (डिफ़ॉल्ट: का मान `MODEL_CACHE_DIR`). TensorRT कैश डायरेक्टरी के लिए कंटेनर पथ सेट करता है। इस पथ को किसी माउंट किए गए होस्ट वॉल्यूम के साथ सेट करने से TensorRT-आधारित सर्वरों का कोल्ड स्टार्ट समय कम होता है।

### स्थायी मॉडल कैश

डिफ़ॉल्ट रूप से, मॉडल वेट्स कंटेनर के अंदर यहाँ संग्रहीत होते हैं `/tmp/cache` और **कंटेनर रीस्टार्ट या सिस्टम रीबूट पर खो जाते हैं**। प्रोडक्शन डिप्लॉयमेंट के लिए, डाउनलोड किए गए वेट्स को सुरक्षित रखने हेतु एक स्थायी होस्ट वॉल्यूम माउंट करें:

```bash
# होस्ट पर एक स्थायी कैश डायरेक्टरी बनाएं
mkdir -p /var/lib/roboflow/cache

# कंटेनर को एक स्थायी कैश के साथ चलाएं
docker run -d \
  -p 9001:9001 \\
  -v /var/lib/roboflow/cache:/tmp/cache \
  -e MODEL_CACHE_DIR=/tmp/cache \
  roboflow/roboflow-inference-server-cpu:latest
```

ध्यान रखने योग्य बातें:

* होस्ट पथ स्थायी स्टोरेज पर होना चाहिए, न कि `/tmp`.
* माउंट की गई डायरेक्टरी के लिए कंटेनर उपयोगकर्ता को उपयुक्त अनुमतियाँ चाहिए (आमतौर पर UID 1000 या root, इमेज पर निर्भर करता है)।
* स्थायी कैश आपको डिप्लॉयमेंट से पहले वेट्स को पूर्व-लोड करने देता है और उन्हें कंटेनर अपडेट्स के दौरान बनाए रखता है।

देखें [ऑफ़लाइन वेट्स डाउनलोड](https://docs.roboflow.com/reference/inference/inference-python/offline-weights) वेट्स को पहले से डाउनलोड और कैश करने के बारे में अधिक जानकारी के लिए।

## HTTPS / TLS

**`ENABLE_HTTPS`**: बूलियन (डिफ़ॉल्ट `False`). जब यह सेट होता है, Inference Server HTTP के बजाय HTTPS के माध्यम से ट्रैफ़िक सर्व करता है, और प्रमाणपत्र तथा निजी कुंजी को यहाँ से पढ़ता है `SSL_CERTFILE` और `SSL_KEYFILE`.

**`SSL_CERTFILE`**: स्ट्रिंग (डिफ़ॉल्ट `/etc/inference/certs/server.crt`को **`SSL_KEYFILE`**: स्ट्रिंग (डिफ़ॉल्ट `/etc/inference/certs/server.key`). कंटेनर के अंदर PEM-एन्कोडेड प्रमाणपत्र और निजी कुंजी के पथ। डिफ़ॉल्ट सुविधाजनक माउंट पॉइंट हैं, इसलिए आमतौर पर आपको केवल अपना cert और key यहाँ bind करने की आवश्यकता होती है `/etc/inference/certs/` और सेट करें `ENABLE_HTTPS=true`.

**`SSL_KEYFILE_PASSWORD`**: स्ट्रिंग (वैकल्पिक)। यदि आपकी निजी कुंजी एन्क्रिप्टेड है, तो इसे सेट करें।

**`SSL_CA_CERTS`**: स्ट्रिंग (वैकल्पिक)। जब आपको क्लाइंट प्रमाणपत्र सत्यापन (mTLS) की आवश्यकता हो, तो इसे एक CA बंडल पर सेट करें।

स्व-हस्ताक्षरित प्रमाणपत्रों के साथ पूरी चरण-दर-चरण मार्गदर्शिका: [Serving Inference over HTTPS](/deployment/hi/self-hosted/inference-server/configuration/https.md).

## सिक्योर गेटवे

**`SECURE_GATEWAY`**: स्ट्रिंग (डिफ़ॉल्ट unset)। का पता सेट करता है [Roboflow Secure Gateway](/deployment/hi/self-hosted/enterprise/secure-gateway.md) एयर-गैप्ड डिप्लॉयमेंट के लिए प्रॉक्सी। Roboflow API और मॉडल डाउनलोड ट्रैफ़िक इस प्रॉक्सी के माध्यम से रूट किया जाता है। जिसे प्रॉक्सी नहीं किया जा सकता, वह ट्रैफ़िक नीचे दिए अनुसार अक्षम या पुनर्निर्देशित किया जाता है:

* Inference संस्करण जाँच (जो कॉल करती है `api.github.com`) को जबरन अक्षम किया जाता है: `DISABLE_VERSION_CHECK` को सेट किया जाता है `True` भले ही इसे स्पष्ट रूप से किसी और तरह कॉन्फ़िगर किया गया हो।
* यदि `WORKFLOWS_STEP_EXECUTION_MODE=remote` को इसके साथ जोड़ा जाता है `WORKFLOWS_REMOTE_API_TARGET=hosted`, तो step execution वापस `local` पर एक चेतावनी के साथ चली जाती है, क्योंकि hosted Roboflow inference endpoints gateway proxy के माध्यम से पहुँचे नहीं जा सकते। रिमोट execution बनाए रखने के लिए, उपयोग करें `WORKFLOWS_REMOTE_API_TARGET=self-hosted` **और** पॉइंट `LOCAL_INFERENCE_API_URL` (डिफ़ॉल्ट `http://127.0.0.1:9001`) को गेटवे परिधि के अंदर पहुँच योग्य किसी Inference server पर सेट करें।
* तृतीय-पक्ष एकीकरण (Google Vision और Gemini direct-key paths, Stability AI, Twilio media upload, external hosts पर webhooks) प्रॉक्सी नहीं किए जाते और तब तक विफल होंगे जब तक गेटवे नेटवर्क उन्हें अनुमति नहीं देता।

विरासती `LICENSE_SERVER` environment variable अभी भी स्वीकार किया जाता है, लेकिन अब deprecated है।
