Creating a simple application via image

This technical guide demonstrates how to efficiently create, manage, and access containerized applications in using Kubernetes-native methodologies.

Introduction

Use Cases

  • New users seeking to understand fundamental application creation workflows on Kubernetes platforms
  • Practical exercise demonstrating core platform capabilities including:
    • Project/Namespace orchestration
    • Deployment creation
    • Service exposure patterns
    • Application accessibility verification

Time Commitment

Estimated completion time: 10-15 minutes

Important Notes

  • This technical guide focuses on essential parameters - refer to comprehensive documentation for advanced configurations
  • Required permissions:
    • Project/Namespace creation
    • Image repository integration
    • Workload deployment

Prerequisites

  • Basic understanding of Kubernetes architecture and platform concepts
  • Pre-configured project following platform establishment procedures

Workflow Overview

No.OperationDescription
1Create NamespaceEstablish resource isolation boundary
2Configure Image RepositorySet up container image sources
3Create application via DeploymentCreate Deployment workload
4Expose Service via NodePortConfigure NodePort service
5Validate Application AccessibilityTest endpoint connectivity

Procedure

Create namespace

Namespaces provide logical isolation for resource grouping and quota management.

Prerequisites

  • Permissions to create, update, and delete namespaces(e.g., Administrator or Project Administrator roles)
  • kubectl configured with cluster access

Creation Process

  1. Log in, and navigate to Project Management > Namespaces

  2. Select Create Namespace

  3. Configure essential parameters:

    ** Parameter **Description
    ClusterTarget cluster from project-associated clusters
    NamespaceUnique identifier (auto-prefixed with project name)
  4. Complete creation with default resource constraints

Configure Image Repository

supports multiple image sourcing strategies:

Method 1: Integrated Registry via Toolchain

  1. Access Platform Management > Toolchain > Integration

  2. Initiate new integration:

    ParameterRequirement
    NameUnique integration identifier
    API EndpointRegistry service URL (HTTP/HTTPS)
    SecretPre-existing or newly created credential
  3. Allocate registry to target platform project

Method 2: External Registry Services

  • Use publicly accessible registry URLs (e.g., Docker Hub)
  • Example: index.docker.io/library/nginx:latest

Verification Requirement

  • Cluster network must have egress access to registry endpoints

Create application via Deployment

Deployments provide declarative updates for Pod replicasets.

Creation Process

  1. From Container Platform view:
    • Use namespace selector to choose target isolation boundary
  2. Navigate to Workloads > Deployments
  3. Click Create Deployment
  4. Specify image source:
    • Select integrated registry or
    • Input external image URL (e.g., index.docker.io/library/nginx:latest)
  5. Configure workload identity and launch

Management Operations

  • Monitor replica status
  • View events and logs
  • Inspect YAML manifests
  • Analyze resource metrics, alerts

Expose Service via NodePort

Services enable network accessibility to Pod groups.

Creation Process

  1. Navigate to Networking > Services

  2. Click Create Service with parameters:

    ParameterValue
    TypeNodePort
    SelectorTarget Deployment name
    Port MappingService Port: Container Port (e.g., 8080:80)
  3. Confirm creation.

Critical

  • Cluster-visible virtual IP
  • NodePort allocation range (30000-32767)

Internal routes enable service discovery for workloads by providing a unified IP address or host port for access.

  1. Click on Network > Service.

  2. Click on Create Service.

  3. Configure the Details based on the parameters below, keeping other parameters at their defaults.

    ParameterDescription
    NameEnter the name of the Service.
    TypeNodePort
    Workload NameSelect the Deployment created previously.
    PortService Port: The port number exposed by the Service within the cluster, i.e., Port, e.g., 8080.
    Container Port: The target port number (or name) mapped by the service port, i.e., targetPort, e.g., 80.
  4. Click on Create. At this point, the Service is successfully created.

Validate Application Accessibility

Verification Method

  1. Obtain exposed endpoint components:
    • Node IP: Worker node public address
    • NodePort: Allocated external port
  2. Construct access URL: http://<Node_IP>:<NodePort>
  3. Expected result: Nginx welcome page