# Deploy On-Premise Jet Admin with Docker

This deployment method grants you access to the full suite of Jet Admin services, empowering your workflow with comprehensive functionality.

## Requirements

* Command-line experience
* Experience with and setups involving Docker Engine and Docker Compose are required.

### Configuration

For On-premise Jet Admin instances, you need a Linux-based machine that fulfills the following criteria:

* Ubuntu 22.04 or later.&#x20;
* 8GiB memory.
* 4x vCPUs.
* 60GiB storage.
* `curl` and `unzip` software packages installed.

### **Install On-Premise Jet Admin:**

Navigate to the environment settings. From the left menu, select "On-premise" and designate the app deployment type as "On-premise".

{% @arcade/embed flowId="Ims6qU1aaFAnsQR1t8sa" url="<https://app.arcade.software/share/Ims6qU1aaFAnsQR1t8sa>" %}

* Open a terminal or command prompt and execute the following command:

```less
sudo sh -c "$(curl -sS https://link-dev.jetadmin.io/install/o23b1j05tktey5glysf504xm6ayi5mklao3kuf60ltt9jzjl)"
```

{% hint style="info" %}
The link provided here is just an example. You need to copy your personalized project link from your project. If you need to know how to find the link, follow the instructions provided in the clip.
{% endhint %}

* This command retrieves a script from the specified URL (<https://link-dev.jetadmin.io/install/o23b1j05tktey5glysf504xm6ayi5mklao3kuf60ltt9jzjl>) and runs it using `sh`.&#x20;
* This script will handle the installation process for the Jet Admin package

{% embed url="<https://www.loom.com/share/688fec3577de4681b4c769f1354dfa68?sid=e368e4ea-37e9-4693-8127-ddb723dfefdf>" %}

### **Run Jet Admin On-Premise:**

* After the installation is complete, you can run Jet Admin on-premise using Docker-compose.
* Navigate to the jet-onpremise directory where Jet Admin is installed.
* Run the following command to start Jet Admin and its components in the background:

  ```
  sudo docker-compose up -d
  ```
* The application should now be accessible at the specified NGINX port (default is 80) on your localhost (`http://localhost:80`).

{% embed url="<https://www.loom.com/share/a55213e22f854f8ca086932cc5cbe876?sid=8bcf4961-de80-4da3-96a0-e0a414234675>" %}

### **Verification:**

* To verify that Jet Admin is running, open a web browser and navigate to `http://localhost:80`.
* Proceed to create a new account, then create a project and add resources.

{% embed url="<https://www.loom.com/share/04a605f83cda438d9d63f72e59c7375c?sid=95cd8a8f-82bc-46e3-b27f-fa9d6de5125f>" %}

{% hint style="success" %}
**Performance Optimization (Optional)**

To improve runtime efficiency after your initial deployment, we recommend stopping additional JetAdmin migration containers once they have completed their tasks (typically within \~10 minutes post-deployment). On your on-premise server, run the following command to force-remove any residual migration containers:

`sudo docker ps -aq --filter "name=migrations_run" | xargs -r sudo docker rm -f`

This step helps free system resources and can enhance overall performance of your JetAdmin instance.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.jetadmin.io/jet-bridge-deployment/on-premise/deploy-on-premise-jet-admin-with-docker.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
