How to get started with Napptive and Deploy your own Application πŸ’«πŸ§‘β€πŸ’»

How to get started with Napptive and Deploy your own Application πŸ’«πŸ§‘β€πŸ’»

Β·

3 min read

In this article, we are going to practically deep-dive into OAM components and deploy the open-source project InfluxDB, a time series database to Napptive Catalog.

Are you ready? Let's get started!🀩

Follow these steps to begin your cloud-native journey and deploy apps like a proπŸ”₯.

Step-1: Creating a free account on Napptive

Sign in to napptive and this will create a free account to get started with your cloud-native journey.

Step-2: Create yaml files

To deploy app create 3 files app.yaml , metadata.yaml and readme.md files in your favorite code editor.

  • influxDB.app.yaml: This file contains all the required definitions (main deployment file) to deploy influxDB to Napptive along with components and ingress.

  • influxDB.metadata.yaml: This file contains the metadata (additional information) about your applications so that Napptive can handle its documentation.

  • README.md: This file contains a detailed description of your application

  1. Contents of influxDB.app.yaml file:

    --> You have to add all the components, environment variables and

    traits of your application in this file.

     apiVersion: core.oam.dev/v1beta1
     kind: Application
     metadata:
       name: influxdb
       annotations:
         version: latest
         description: "Latest version of InfluxDB"
     spec:
       components:
         - name: influxdb
           type: webservice
           properties:
             image: influxdb:latest
             ports:
               - port: 8086
                 expose: true
             livenessProbe:
               httpGet:
                 path: /ping
                 port: 8086
               initialDelaySeconds: 15
               periodSeconds: 10
           traits:
             - type: resource
               properties:
                 cpu: 0.5
                 memory: "500M"
                 requests:
                   cpu: 0.5
                   memory: "500M"
                 limits:
                   cpu: 0.95
                   memory: "950M"
             - type: napptive-ingress
               properties:
                 name: influxdb-ingress
                 port: 8086
                 path: /
       policies:
         - name: healthscope-policy
           type: health
           properties:
             probeInterval: 30
             probeTimeout: 10
    
  2. Contents of influxDB.metadata.yaml file:

     apiVersion: core.napptive.com/v1alpha1
     kind: ApplicationMetadata
     # Name of the application, not necessarily a valid k8s name.
     name: "influxdb"
     version: latest
     description: InfluxDB is an open-source time series database 
                  developed by the company InfluxData. 
     # Keywords facilitate searches on the catalog
     keywords:
       - "data store"
       - "DevOps monitoring"
       - "log data" 
       - "application metrics"
       - "real-time analytics"
     license: "MIT License"
     url: "https://www.influxdata.com/"
     doc: "https://docs.influxdata.com/"
     logo:
       - src: "https://www.niagaramarketplace.com/media/catalog/product/cache/8272e5d606ba848a87db29108f4efa34/m/a/marketplace_icons_13_.png"
         type: "image/png"
         size: "120x120"
    
  3. Add content to Readme.md file according to your application.

Step-3: Uploading app on Napptive Playground

  1. Navigate to https://playground.napptive.dev/

  2. Click on the catalog icon.

  3. Now, click on the upload app button.

  4. Upload all the 3 files and give your app the appropriate name.

  5. After your app is uploaded in the catalog move forward towards deploying it by clicking the deploy button.

  6. Then check the configurations and again click on deploy

  7. Then click on Yes, deploy button.

  8. Then click on the go to deployment button.

  9. And now your deployment is ready to launch πŸš€.

  10. Now you can visit your deployment by clicking on the endpoint link.

Huraahh ! πŸ₯³πŸŽ‰you just made your first move in the cloud-native world 🌎!!


Feel free to reach out of you get stuck anywhere.

Here's my socials:

Β