> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dcdeploy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Deploy from Docker registry

> Deploy your services using Docker images either from DockerHub or from a private registry

<iframe src="https://app.supademo.com/embed/cmldimgc54tzivhwz2rodods6" width="100%" height="500" allowFullScreen />

<Steps>
  <Step title="Navigate to Deploy tab">
    Navigate to the **Deploy** tab of the environment in your DCDeploy dashboard where you want to deploy your service.

    <img height="200" src="https://mintcdn.com/dcdeploy-9454b28e/pB_4WKNF_G09F_LI/docs/deploy/images/deploy.png?fit=max&auto=format&n=pB_4WKNF_G09F_LI&q=85&s=a7f60611746e34f17663c1c756fa5973" data-path="docs/deploy/images/deploy.png" />
  </Step>

  <Step title="Add a new service">
    Click on **Add Service**. A new form will appear where you can provide details of your service.
  </Step>

  <Step title="Begin Deployment">
    1. Begin by adding a new service.
    2. **Service Name**: A unique name is auto-generated by default. You can change it if needed.

    <img height="200" src="https://mintcdn.com/dcdeploy-9454b28e/pB_4WKNF_G09F_LI/docs/deploy/images/service-form-docker.png?fit=max&auto=format&n=pB_4WKNF_G09F_LI&q=85&s=b21ba160bc2fc383fbe157e3883c93a5" data-path="docs/deploy/images/service-form-docker.png" />
  </Step>

  <Step title="Select Source and Image">
    6. Next, select the source type for your service (default is **Docker**).
    7. Afterwards, provide the image details.
    8. Valid examples: `nginx:latest`, `nginx`, `docker.io/nginx:latest`, `docker.io/nginx`.
    9. Continue by adding the image configuration.
    10. By default pull-secret set to no pull-secret if the service is private configure credentials , the service will be deployed in private network. Otherwise, it will be deployed in public network.
  </Step>

  <Step title="Configure runtime settings">
    Configure how your service should run:

    * **Port**: Enter the port number your service listens on. Ensure your app binds to `0.0.0.0` on this port.
    * **Protocol**: HTTPS is the default protocol.
    * **Region**: Select the DCDeploy region(s) where you want your service deployed.
    * **Machine Type**: Choose from available DCDeploy machine types (CPU, RAM, and Disk). [See details here](https://dcdeploy.com/pricing/).
    * **CPU/Memory Usage Limits**: Configure resource limits according to your service requirements.
    * **Environment Variables**: Provide environment variables by directly pasting your `.env` file or add them manually.
    * **Scaling Options**:
      * Define minimum and maximum instances.
      * Enable **Auto Scaling** to automatically scale based on traffic or CPU/memory thresholds.
  </Step>

  <Step title="Summary">
    Click the **Continue** button.

    <img height="200" src="https://mintcdn.com/dcdeploy-9454b28e/pB_4WKNF_G09F_LI/docs/deploy/images/summary.png?fit=max&auto=format&n=pB_4WKNF_G09F_LI&q=85&s=87ba5a0954ee94d2eeebd04a4ffd940f" data-path="docs/deploy/images/summary.png" />

    * You’ll be asked for confirmation before deployment.
    * If multiple services are added, removed, or updated, confirmation will cover all changes.

    <img height="200" src="https://mintcdn.com/dcdeploy-9454b28e/pB_4WKNF_G09F_LI/docs/deploy/images/confirm.png?fit=max&auto=format&n=pB_4WKNF_G09F_LI&q=85&s=8947c28d900e85e8cdca6d255e9f8ae4" data-path="docs/deploy/images/confirm.png" />
  </Step>
</Steps>
