How to get started with Napptive and Deploy your own Application π«π§βπ»
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
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
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"
Add content to Readme.md file according to your application.
Step-3: Uploading app on Napptive Playground
Navigate to https://playground.napptive.dev/
Click on the catalog icon.
Now, click on the upload app button.
Upload all the 3 files and give your app the appropriate name.
After your app is uploaded in the catalog move forward towards deploying it by clicking the deploy button.
Then check the configurations and again click on deploy
Then click on Yes, deploy button.
Then click on the go to deployment button.
And now your deployment is ready to launch π.
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: