Codiac Quickstart Guide 1: Setup
In this quickstart, you’ll configure local environment for what Codiac needs to run (Docker and NPM only) and set up your Codiac account.
Part 1: Codiac Prerequisites
Docker
The first step is Docker. If you’re on a Mac, Windows machine, or Linux distribution, you can install the Docker engine. One of the most popular methods is with Docker Desktop.
First, go to the link below and you should see a screenshot similar to the one below.
https://www.docker.com/products/docker-desktop/
Next, choose your platform architecture for installation.
Once installed, you should see the Docker engine running. For example, on a Mac, you’ll see it on the top navigation bar.
When you begin to install Codiac and get it running, you can go back into Docker Desktop and you’ll see the Codiac Relay container. You won’t see this container until you start the Codiac configuration process.
NodeJS
The next installation you’ll need is NodeJS version 20.13.1 or later. When you install NodeJS, it comes with JavaScript and the NPM package manager, which you’ll need to install the CLI.
To install NodeJS, go to the following link:
You should see a screen similar to the screenshot below.
When you click the Download button, you’ll see the package on your local computer.
Once you download the NodeJS package, you can open up a terminal, run npm
, and confirm that NPM is installed.
A Place To Run Clusters
The last thing you’ll need is a location to run Kubernetes clusters. At the time of writing this article, Codiac supports two major cloud providers.
- Azure
- AWS
Let’s learn how to set up both within the free tier limits.
Azure
To set up an Azure account, you can see the free account link below.
https://azure.microsoft.com/en-us/free
You’ll see a green Start free button similar to the screenshot below.
On the same page, you’ll see that Azure gives you a $200.00 free credit which you can use for an Azure Kubernetes Service (AKS) cluster.
AWS
For the AWS Free Tier, you can use this link.
You’ll see a page similar to the screenshot below come up. Before clicking the orange Create a Free Account button, click the blue Learn more button.
You should see all of the Free Tier details, including the EC2 hours that you get for free (ec2 instances are what run the Kubernetes Worker Nodes on Elastic Kubernetes Service (EKS)).
What you won’t see for free, however, is EKS. You’ll most likely have to pay a few bucks for EKS (for the EKS service itself, not for the EC2 instances running the Worker Nodes), but as long as you delete the EKS cluster when you’re done in your home lab, you won’t accrue thousands of dollars of cost.
Congrats! You’re officially ready to start using Codiac.
Part 2: Codiac Setup
Account Configuration
- Go to the Codiac website: https://www.codiac.io/
- Click the blue Try it free button.
- You’ll be brought to a few pages asking for information like your company name, email, etc. for signup purposes.
Once you type in a company name, you’ll see a few prompts to enter things like email (doesn’t have to be a business email address), name, and password.
Before moving on, you’ll need to install the Codiac CLI via NPM.
Installation
Your Codiac account is now configured, so it’s time to begin the installation. You’ll see the installation in a few parts:
- The CLI configuration.
- The UI and CLI installation.
- The cluster installation.
CLI Installation
Codiacs installation package is via NPM (which is why JavaScript is one of the prerequisites), so you’ll need to bring down the Codiac CLI via NPM which is the JavaScript package manager.
The command below pulls down the Codiac CLI.
npm i -g @codiac.io/codiac-cli
You can then use the Codiac CLI to log into your Codiac account with the same email and password you created/used in the previous section.
codiac login
UI and CLI Configuration
Once Codiac is installed, you’ll be brought to the UI. The UI will show a few steps to get Codiac up and running. The first step is the Asset.
An Asset can be any entity, like a docker image, to get your SDLC started.
You should see a screenshot similar to the one below.
- Click the Continue button.
- You’ll then see a command to run. Open up the terminal and run the following:
codiac asset create
- You’ll be prompted to add a cloud registry. The reason why is because Codiac wants to help you get up and running right away, so one of the first steps is to pull down a containerized image to deploy.
Log into the container registry that you typically use. The four choices are AWS ECR, Azure ACR, ArtifactHub, and DockerHub.
Your terminal may look a bit different than mine. The reason why is because I created a Codiac asset already.
- When you choose a container registry, you’ll be prompted to log in. For example, if you choose AWS ECR, you’ll need to log in via AWS IAM access key/secret.
If you don’t already have an IAM key/secret, you can create one from the AWS portal. The IAM user's key/secret will need CLI access.
After the authentication occurs, you’ll be prompted with several questions (see below screenshot). As you’re going through, you’ll realize that you’re being prompted for information to deploy your first asset (containerized application).
Codiac gets you up and running with a few questions (port number, name, ingress options, external access, etc.). The overall goal is to make your live easier when it comes to your Software Development Lifecycle (SDLC) journey.
Cluster Installation
Once the asset is created, you’ll need a place to deploy your application. That’s where Codiac’s cluster creation and configuration comes into play.
- Use the Codiac cluster create command.
codiac noc cluster create
- The first prompt you’ll see is to choose a cloud provider. At the time of writing this (July 2024), the two cloud provider options are AWS and Azure.
- Authenticate to your cloud provider. In the example below, authentication is occurring against AWS.
- When you get authenticated, you’ll see several prompts come up to define how you want your Kubernetes cluster to look. Everything from the Worker Node size to the subset to the region and everything in between.
- After typing in all of the prompts, you’ll be able to create your cluster per the screenshot below.