Developing on Civo is a great experience! A full Kubernetes-certified platform that is easy to deploy, consistent pricing, and an amazing community - it's an amazing platform to get started. Often the question is asked, "how do I get started?" There are a lot of new concepts at work. This overview will address how to quickly get started with a fully configured development environment leveraging Gitpod. Gitpod is an online development environment that will be fully configured and a full variety of tools will be available for developing across a wide range of languages.
To get started, you'll need to set up a few accounts ahead of time:
- Github - A repository for your source code
- Docker - A container registry to upload container images, so they can be deployed easily.
- Civo - The cloud provider to deploy your application.
- Gitpod - An online development environment. Use your Github credentials for the smoothest experience.
First - the repository
Let's start with an empty Github repository. Click the "New Repository" link in Github, and give your repository a name.
We'll choose the name of
myjamstack in this example. We will choose to populate a README.md and give this repo an MIT
Initial Gitpod configuration
Let's configure our repository to use a custom Gitpod environment, which will help configure the initial environment. WIthin your new repo in Gitup, click the
Add File -> Create New File button, the new file
.gitpod.yml, and add the following contents
image: quay.io/ssmiller25/gitpod-k8s:latest tasks: - name: Login to Cloud Resources command: | bash $HOME/scripts/00-cloudinit.sh vscode: extensions: - ms-azuretools.vscode-docker - ms-kubernetes-tools.vscode-kubernetes-tools
Commit the file to the main branch.
Start a Gitpod project
Now go to Gitpod, and create a new project. Point to the new repository you created, and create the project in your personal space. Once it's up, the environment should come up as below:
Look for the purple "Logging into cloud environment" text in the terminal. To configure the environment, you'll need to obtain your Civo API key from your security profile. With that and your docker credentials, run the following within the Gitpod command line:
gp env CIVO_API_KEY=xxxx-yyy-ccc gp env DOCKER_USERNAME=dockerusername gp env DOCKER_PASSWORD=$(echo -n 'yourdockerpassword' | base64) # Load new env variables in new environment eval $(gp env -e) $HOME/scripts/00-cloudinit.sh
You should see messages similar to the following if the authentication worked
Environment is now complete
You now have a complete environment, ready to begin development. Gitpod's base environment has tooling to help develop in Go, Java, Node.js, C/C++, Python, Ruby, Rust, and PHP along with Docker and a few other utilities. The custom image adds Kubernetes CLI tools, VScode plugs and eases environment login to Civo and Docker so that you can be developing immediately. From this base, we can now begin developing and deploying apps.