Getting Started
This guide helps you get up and running with Deploio, from installing the CLI (nctl
) to creating your first project. You'll also find resources, best practices, and common pitfalls to avoid.
Installing nctlβ
nctl
is the command-line interface used to interact with Deploio and the underlying Nine Kubernetes Engine (NKE). You can use it to manage projects, trigger deployments, view logs, and more.
π Read the full nctl API docs here
Step-by-step setup:β
-
Download and install
nctl
. Various methods of installation are detailed on the Github page. -
Login to the API (providing you have an account) using:
nctl auth login
- Check you are authenticated and have access to the API:
nctl auth whoami
- View your available projects:
nctl get all
Creating an accountβ
Setting up access within an organizationβ
Accounts in Deploio are tied to your Customer Account (or organization
). When logging in via nctl, your identity and permissions reflect whatβs configured in the Cockpit for your organization.
If you have Administrator access on the organization, you can manage users and access for the organization directly in the Cockpit.
If the organization already exists and you need a new user account, you need to:
- Ask your admin to invite you to the correct organization
- Log in using your credentials provided
- Authenticate
nctl
(see here)
Once you are set up, you can check your available organizations once logged in on the CLI by running nctl auth whoami
.
Setting up a new user or organizationβ
If you do not have an organization setup and wish to do so, you should contact Nine directly. There is a contact form and details at Deplo.io.
Should you wish to create an individual user, you can do so on the Cockpit registration page.
Setting up your first projectβ
In Deploio, the structure follows a strict hierarchy:
A created Organization
is the top-level entity, which can contain multiple projects.
A Project
is the logical container to group applications within. Each project can have multiple applications. This structure allows for better organization and management of resources.
An Application
is the actual deployment unit. It can be a web application, a microservice, or any other deployable unit. Each application is associated with a specific project and inherits the default configuration from the project unless specified otherwise.
You can see an explanation of the configuration levels here.
Useful resourcesβ
Blogsβ
There are a number of blogs and other resources available that can provide more information and use cases for Deploio. Please see a list below:
Quick start guidesβ
π§ Under construction π§
Videosβ
π§ Under construction π§
Avoid commom pitfallsβ
-
If you are using Node in your application, you need:
- A
package.json
in the root of the project - The following environment variable during the build process:
BP_INCLUDE_NODEJS_RUNTIME="true"
- A
-
Always check your current session and access with:
nctl auth whoami
-
Always make sure you set the project in which you wish to make changes with:
nctl auth set-project my-project
-
Otherwise, you can specifically set the project as a flag. For example:
nctl get configs --project=org-my-project
-
Projects are prefixed with your organization name. For example
my-project
withinorg
can be referred to asorg-my-project
.
Best Practices for Beginnersβ
- Store secrets securely using environment variables managed via Cockpit or nctl.
- Regularly review and update your configurations to ensure they meet the latest security and performance standards.
- Use staging environments to test your applications before deploying to production.
- Monitor your applications using the avaiable tools.