> For the complete documentation index, see [llms.txt](https://docs.duplocloud.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.duplocloud.com/docs/automation-platform/overview/quick-start/quick-start-eks-services/step-5-create-app-via-k8s.md).

# Step 5: Create a Service

DuploCloud supports three container orchestration technologies to deploy Docker-container applications in AWS:

* Native EKS
* Native ECS Fargate
* Built-in container orchestration in DuploCloud using EKS/ECS

{% hint style="info" %}
You don't need experience with Kubernetes to deploy an application in the DuploCloud Portal. However, it is helpful to be familiar with the [Docker ](https://docs.docker.com/)platform. Docker runs on any platform and provides an easy-to-use UI for creating, running, and managing containers.
{% endhint %}

To deploy your own applications with DuploCloud, you’ll choose a public image or provide credentials for your private repository and configure your [Docker Registry credentials](/docs/automation-platform/overview/aws-services/containers/docker-registry-credentials.md) in DuploCloud.

This tutorial will guide you through deploying a simple `Hello World NodeJS` web app using DuploCloud's built-in container orchestration with EKS. We’ll use a pre-built Docker container and access Docker images from a preconfigured Docker Hub.

*Estimated time to complete Step 5: 10 minutes.*

## Prerequisites

Before creating a Service, verify that you completed the tasks in the previous tutorial steps. Using the DuploCloud Portal, confirm that:

* An [Infrastructure and Plan](/docs/automation-platform/overview/quick-start/step-1-infrastructure.md) exist, both named **NONPROD**.
* The **NONPROD** infrastructure has [EKS **Enabled**](/docs/automation-platform/overview/quick-start/step-1-infrastructure.md#check-your-work).
* A Tenant named [**dev01** has been created](/docs/automation-platform/overview/quick-start/step-2-tenant.md).
* A host named [**host01** has been created](/docs/automation-platform/overview/quick-start/quick-start-eks-services/step-3-create-host.md).

## Adding a Service

1. In the **Tenant** list box, select the **dev01** Tenant.
2. In the DuploCloud Portal, navigate to **Kubernetes** -> **Services**.
3. Click **Add**. The **Add Service** page displays.<br>

   <figure><img src="/files/09yMAlRsG4dNm2t3HmAd" alt=""><figcaption><p><strong>Add Service</strong> page</p></figcaption></figure>
4. From the table below, enter the values that correspond to the fields on the **Add Service** page. Accept all other default values for fields not specified.
5. Click **Next**. The **Advanced Options** page is displayed.
6. At the bottom of the **Advanced Options** page, click **Create**. In about five (5) minutes, the Service will be created and initialized, displaying a status of **Running** in the **Containers** tab.

| Add a Service page field | Value                            |
| ------------------------ | -------------------------------- |
| **Service Name**         | `demo-service`                   |
| **Docker Image**         | `duplocloud/nodejs-hello:latest` |

{% hint style="info" %}
Use the **Containers** tab to monitor the Service creation status, between **Desired** (**Running**) and **Current**.
{% endhint %}

### Using Spot Instances (optional)

Follow the steps in [Creating Services using Autoscaling Groups](/docs/automation-platform/overview/use-cases/hosts-vms/auto-scaling/auto-scaling-groups.md#creating-services-using-autoscaling-groups). In the **Add Service** page, **Basic Options**, Select **Tolerate spot instances**.

## Checking your work

Verify that your DuploCloud Service, **demo-service**, has a status of **Running**.

1. In the **Tenant** list box, select the **dev01** Tenant.
2. In the DuploCloud Portal, navigate to **Kubernetes** -> **Services**.
3. Click on the Service name (**demo-service**).
4. On the **Containers** tab, verify that the current status is **Running**.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.duplocloud.com/docs/automation-platform/overview/quick-start/quick-start-eks-services/step-5-create-app-via-k8s.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
