# Deploy a Containerized Application on StackOS

<details>

<summary>On this page</summary>

We show you the steps to deploy your containerized application.

</details>

### Login to StackOS

Before deploying your application, you need to be logged in on StackOS.&#x20;

To [log in](https://xcarbon-po9735c1b49ce22752fc67f83df79fc6bbe290da17-authority.stackos.io/), follow these steps:&#x20;

1. Visit the [StackOS deployment page](https://xcarbon-po9735c1b49ce22752fc67f83df79fc6bbe290da17-authority.stackos.io/).&#x20;

* Choose a log-in option, Gmail, X ( Twitter), Email/Phone, or Wallet.&#x20;
* For the Gmail login option, authorize access and continue.&#x20;
* For the X (Twitter) login option, input your username and password and sign in.&#x20;
* For the Email/Phone login option, input your email or phone number, request a One Time Password (OTP code), and input the received code.&#x20;
* Choose Metamask or Wallet Connect for wallet login, and approve the connection.

&#x20;  2\.   Create a username or choose any from the available options, and click next:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXelwN-EUctq0MNJsUpWS8_Qu1ZWJG_McFLRqFtk5L_z4q2jFrJqaUpoTSn94RnjhLItp7XWM2OU-t3ek5fZtp1DPuhQXb3nKwO8BhOC1m5va7Pl_Jb0YdsQR838pUtbQmDAVB8RkATVicCl12WKM5Z1qrc?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

### Create a Deployment account

You need assets to pay for actions (transactions) you carry out on StackOS, including funds for deployment. To fund your StackOS with assets for this, click on the wallet icon:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXcfkH-eCjpiLe6xPM0BQNl44WcXi_KFbd8zDzsl7hWUXqMph2HAwGh_AahIPsrt21mK_b2GP8YdcyTIHGzL2Qkn3kDlsa84CQmSk0xIxS0YjCpGmabz_Z4i0fUFYiMyeORptCLDTh-TSia01KaA5WG7oPAG?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

Next, copy the address for your account and fund:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXe6PMgBN-Ibut5xtJQNXbKbcZ0OkEIBQXDcG0jot7WQc6wkiaDaRXrl23m4Q7lnMS7V66WkGUjK1kBvoPSpDdpFzQawhEmKChFmw4qKvL23-KpV_hFQfKXzhkym9vsu1QGiidh_3EOZP4CijCdkz9Qw5iqc?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

Now that your account is funded. To create a deployment account, click the “**+**” button:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXfx_BFLUZUj-Xqct51IUvcrhbtG7lBr1oyg-hnLsWRNvCaB0O9EfL60OlH16I664YnC1QUupemgFisMZR9trKv1lpCK2dgFhdJT5EhzNz_gj_bUOjTkZcERnt3v1lBAAiZTwxGw_8cBuzcFx7kHF_yjXfRG?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

After clicking the button, approve the action. After the transaction is approved, you get to have a new account:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXcvz-JCVww70oRCLV_FiSswx14YLQw14par3PRrhUxQU4Zu1JXa8qSnzekXfCWxl9X5MwTfe3G0qnR2MwljXww4kw14fwBHK5Jupdd8IrjU43dEP_mYAMME1ceKSERQ_pSIQmsd7Vl89yh5PoJ_cRFb1JWb?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

To get access to other functionalities, click on your new account.

### Deploy your Application

If you want to deploy your application, click on deploy:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXc6G4G9MmdGlZGzE3cjI_NMk4PFUjfbNELGxZjcGcBKUa5SkL5xaFIb8_JWCfyy2uKxXhlp49V2TzP_y87FmWfJxGtkufhRwAkLsNEDEWbO7ZTTt03aJoPL6SJvU2PlUYN-Iwb5cKkvGOF04r5GxxEYUBc?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

If your application is a containerized docker image, you can choose the **custom image** option else, choose file upload:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXepLvuM4pHOvT3kyRNBITI_WbGbt8yv_tidNdRI2fXYEpwjvjvPKUYxHct4LRR8Hxf7dfus9nQRVGYk0lO-GWNUUxryGdw_HWU5_7xYDHT24iAdKRA0CB1SjQ8XFKU9eOZyUdeGleCJjnqsutA4R7Tr_d7d?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

#### Basic Docker  Image Information

Input your **application name**, **image name**, and **tag** details:&#x20;

* Application name: It must be unique and related to the application you want to deploy—for example,  `testapp`.&#x20;
* Image name: Here, you need to input the docker image name of your application. For example, `nyanit/hexgl`.
* Tag: Input your application docker image tag—for example, `V1`.

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXdQ4Z8-7kWwzG5gYS9KNILKg5aRzWtyyVeEOm-HnPH6toxNhTgradXje6abiRAsDjWKSYe0vscIQEkaZMp1ZPgNnHoGCjw57f7FOPFOYJrh2JjICAMGr4scbo5FpU7piLrljL_Sf1XoTGuL3vo47jccc8L7?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

After inputting the details of your docker image, select the software lock or no deployment tickbox, if any applies. Here, tick the software lock option.

If you have a private docker image, click the private image toggle and fill in the required information. This information is the docker **image registry**, **username**, and **password**:&#x20;

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXfeV0oP_15aVm97LSu5V6fV46WRlOBxQIEHmiqZeC-eY2cAu8b1IukhChDO5LHWf0iHDbx-84QInTIY1LRXV3Bb0e6lU7D_Ok4ZqRh5Eg7FejAG0bf7nVKigCIaoMmd1WOSqbPW-LkBcOP997M6RI3HQN_r?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

However, for this guide, you are using a public docker image. After filling out the required information, click on next.

#### Container Image Details

Set the network setting details for your docker image. If you used the example docker image in the previous section, leave the details as it is:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXcGG4G8ZiEnIcOeHkxOjrz2-Tp8QtyqzaaAR4yOkiO-1S-O_WWsJf-CB_hNB7-bmbpC8cZPyqUuco3kW6nAjgv_Vi5dk4rD6D_8aBt-49r0SL2VBkeEUdoorVYD7gh7mYFcOAz0V2ldV1vlm98MaRCg5_pX?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

However, if your docker image uses a Transmission Control Protocol (TCP), click the protocol dropdown and select TCP.&#x20;

And if there are any properties for your docker image, such as **path**, **environment variables**, **stateful set**, **args**, and **commands.** Click the toggle and fill them in where necessary:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXcLS5JqFrzrgTw7a1XjXzrop1Knpl8V4Be7dye_AS_atp4Lnl2EJHIkDqqvoVCGWHZ-v830s8UThfQTASdzXA410ZnUVlDKfpj3sWsKbG2SlQj5etln3fU5uDtTJ_SW9K4u_BTKXI_ubBzNhzizU255-aqt?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

#### Resources Usage

Here, set up the hardware resources requirement for your application:&#x20;

* Instance Type: Select your application's Central Processing Unit (CPU) requirement, either **standard** or **intensive**. Here, you are to choose the **standard**.&#x20;

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXdTxHcU0eUZtF9dnIHW4EQbdjWuDiszoeH6DOCEfS2WwPCtKCR3n5KZQFthBPdwIeSZKDeD2LyF9iDU27K9R4gizc4a_EeRcBOOURHi7qDiYt6WeRBy1awET9AOwuecD-pXfZkzycgjMGXzVsQUzfWcLv_K?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

* Under the Instance type dropdown option, choose the number of CPU resources for your application by moving it to the right using the toggle—for example, 1.

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXehKLaSB4yA-dwRe6HoNZr2w4ZIx6fYu79oX05dO2acdfkuwhY_pwN2-nKPWP1avAuCr2eloyUZP_mkb-nMXYATAidHZIgfb_Gqu-bk9Lt9Q917_Gp1pTi-3LZ8UAixdq-ndWvEFklvYywnk6B0aLbB0ok2?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

* Data Persistence: If your application requires this, click on the toggle, input the path to Mount Volume, and select the storage type, either Standard IOPS or High IOPS.

After you are done with the configuration, click next.

#### Choose Subnets

Here, choose the Marvel provider and the number of subnets you require for your application. For example, 2:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXckNF3u_LedemZoo4v06E4y45lOlyFnRjvRf-3_yWss6AsNcO2gLJo2nshAdkd5ac9Fc-5-Kr-jJJ2o_4y8rlZrJ3fimHWuKe8UJoP0xCGX61OXlqIjxmA9uIpdUzZOxnCVTfQbMy_3rbXb-XIU3zOW71Rz?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

After you have, click next, and when the Attributes Variables page comes up, click next.

#### Balance to Add

Add a subscription credit here and choose the period you want it to run. For example, one week. After you have, click deploy:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXfoSdiUoZY89JBzcZfzMLUIBznjAfHqwtDp9QxDNI2qSBp9ieRRX9svBd3diKOb9rB_uxFL0sAJeO1dJGNSSZX_x6pTAGXe2bgEaXT98s1cI-HlI1XgSZ4Xn-gGq7hUWWPrYxbcWPp3HIbMieOUNKZ-hxo-?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

Next, approve the transaction, and after the transaction has gone through, click **Let’s go**.

#### Checking out your Deployed Application

After you have deployed your application on StackOS, you can find it on the dashboard, in this case, named `testapp`:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXchQYic8wzYLi-qE0LySmyhprn_-wgrYiLt7TzcBIagr1q3fxSO_F0Ke9cotafQXlfabo2m52VStW2dhNSQJ2XX-jPzfdempsxzx0-GCaM3xaP66dNY_kGj6hMibfbbTT4QMIIZ1qwHC76aTH_kVVViiPEv?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

#### Editing your Application Information

If you want to edit the basic information of your deployed application, click on the icon:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXeMEHtWqwcSjnoXaSUaInQY3Gq_CbZ63gIwk6Y6RJenN4vdUZvSh33EA9v-78i-DX2NY-yieXlgY-aKVf8MiiPz_s5dnUZdb-ZNAj7KoN52EW8cdmmyxcDB2nkuiKcS5eGkJXsb8gs-kjRUcLq-1lNELRM?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

After you have made the changes you wish to, click on this icon:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXftXzOvdhEF7sDVVPjAIR0hM9ozNGjL27aEQP8YpyPS13G21StcbKJBjB3MEYxML5dKrMHn2ECcrK95qyEovdNagpXCvzkoEGUuosPheme3Z9PoF2qQAOBCwYTpHazbZlFoL4beFQZViGZ9R8rvdsBXigfE?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

After you have, click on update and approve the transaction.

#### Delete your Deployed Application

To delete your application, click on the delete icon:

<figure><img src="https://lh7-us.googleusercontent.com/docsz/AD_4nXcJuCrzAVqlXJqTtlqRKcz3RnWXqMSWlApft7mJHnD--yw3jjtjwNSBkeQo0obapanPdOEVlZjEZCfCrKu3sPtVAWU6MVoxCeUFi4pnlBt3-_QCeAAUu-SFmD7wTy9I5obHQmbXiZGCEZqsoOrPFhAhfl4?key=ZYEVbU_8Pa4ip9m3APDpEg" alt=""><figcaption></figcaption></figure>

After you have, confirm the decision and approve it.
