> For the complete documentation index, see [llms.txt](https://docs.hivel.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hivel.ai/self-managed-hivel-deployment/on-premises-generic/hivel-on-premises-deployment-guide-generic/deployment/method-1-deploy.sh-recommended.md).

# Method 1 - deploy.sh (Recommended)

Use this method unless you require direct Docker Compose management. The script handles image pulling, service startup ordering, health checks, and log access automatically.

#### Deploy All Services

On the host, run:

```
cd /opt/hivel-onprem

./deploy.sh --vm   # deploys all the services on the host
./deploy.sh --service auth-svc   # or deploy a specific service
```

{% hint style="info" %}
**Contact Hivel** [**support@hivel.ai**](mailto:support@hivel.ai) **for more info on deploying a specific service and list of services.**
{% endhint %}

**Expected result:** `./deploy.sh --status` on each host shows all its services as Up.

This deploys all services on the host. Verify Deployment.

**Success:** All services show as `Up`\
**Failure:** One or more services show as `Exited`, `Restarting`, or absent. See Services not starting in [Troubleshooting](https://docs.hivel.ai/self-managed-hivel-deployment/on-premises/troubleshooting).

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Command</strong></td><td><strong>Purpose</strong></td></tr><tr><td>--vm</td><td>Deploy the Host </td></tr><tr><td>--service &#x3C;name></td><td>Deploy a specific service</td></tr><tr><td>--status / --health</td><td>Check status / health</td></tr><tr><td>--logs / --logs &#x3C;service></td><td>View logs</td></tr><tr><td>--start / --stop / --restart</td><td>Control services</td></tr><tr><td>--update</td><td>Pull latest images</td></tr><tr><td>--list</td><td>List all services</td></tr><tr><td>--help</td><td>Show help</td></tr><tr><td>--all</td><td>Deploy all services on one instance</td></tr></tbody></table>

<br>

{% columns %}
{% column %} <a href="/self-managed-hivel-deployment/on-premises-generic/hivel-on-premises-deployment-guide-generic/deployment.md" class="button primary" data-icon="backward">Back to Deployment</a>
{% endcolumn %}

{% column %}

{% endcolumn %}

{% column %} <a href="/self-managed-hivel-deployment/on-premises-generic/hivel-on-premises-deployment-guide-generic/deployment/method-2-docker-compose-directly.md" class="button primary" data-icon="forward">Method 2 - Docker Compose Directly</a>
{% endcolumn %}
{% endcolumns %}
