Using Github Actions to Build a Kasm Workspace for XChat IRC Client

I really like building and customizing my own Kasm images to use containers to run my applications instead of installing them directly in my computer. Here’s how I built the xchat client Kasm Workspace.

Dockerfile

Most and I mean most of the work is done by the Kasm team since the base images are loaded with all the dependencies needed for Kasm Workspaces and all you have to do is install your app and customize it.

Github Actions for Docker:

  1. Create a new secret named DOCKER_HUB_USERNAME and your Docker ID as value.
  2. Create a new Personal Access Token (PAT) for Docker Hub.
  3. Add the PAT as a second secret in your GitHub repository, with the name DOCKER_HUB_ACCESS_TOKEN.

Source: https://docs.docker.com/build/ci/github-actions/

The Github action will run to login, build and push your container to your DockerHub account. Once that’s ready you can proceed to configure kasm to use your container image.

Configuration for Kasm

Once the container is available in the DockerHub repo or other container registries it can be pulled to the Kasm server.

Once the container is in my pulled images I can setup the Kasm Image

Now it is ready for me to use and further customize.


Shifting from legacy VDI to an innovative containerized solution.


CDI / VDI enable lighter endpoints.

For the past few years I have been searching, learning and implementing different techniques to integrate DevOps practices with VDI. Most VDI solutions are using legacy solutions that require manual configurations, repetitive steps and no DevOps strategies for automation. The architects and engineers that notice this trend are creating their own orchestration around the costly vendor solutions. In my searching I found a few companies and repos that are providing containerized "desktop" solutions with graphical interfaces so that users can remote/console in and interact inside the container as they are accustomed to with a VDI or RDP. I found Kasm Technologies and, after reading their articles and configuring my POC, it became my personal favorite because it matched the vision and innovation I had in mind. A containerized desktop infrastructure (CDI) follows DevOps practices at its core with Docker and CI/CD Pipelines.

Read more