Articles
User management and authentication service using MongoDB
More often than not, web applications require restrictions regarding who can access the content that they serve. This involves an user management and authentication system, which, if designed inappropriately, can lead to security concerns. However, the development of such system can be time consuming, especially if done repeatedly for multiple applications.
Node.js DevOps example
In this article, we’ll build a simple Node.js application that uses Express to respond to HTTP requests. In order to deploy this application to production, we’ll also configure a GitLab CI/CD pipeline so as to dockerize it and deploy its container to a Kubernetes cluster.
Application containerization
Let's imagine a developer building an application on his computer and that this application is meant to be deployed on a different machine (production environment). In order to execute properly, this application requires multiple libraries, binaries and packages. For example, a Python program requires the Python interpreter as well as all the imported Python modules.
Creating a private docker registry for Kubernetes
A docker registry can be run easily using as a docker container using docker itself.
Docker images and containers management
Here are a few commands to manage docker images and containers
Docker restart container when docker restarts
Simply add the following flag when using docker run
Gitlab CI commands for TF serving
This is an example .gitlab-ci.yml file which can be used to containerize and deploy a tensorflow model
Serving a Keras model using Tensorflow serving and Docker
A Keras model can be created in various ways, for example using the <a href="https://keras.io/getting-started/sequential-model-guide/" rel="noopener noreferrer nofollow">sequential model</a>:
Minikube using insecure registry
By default, Minikube will not allow the usage of insecure docker registries. To change this setting, Minikube can be started as so:
Self hosted Docker registry
When using the <code>docker pull</code> command, container images are by default downloaded from docker hub, the official public registry for container images. However, for some projects, images are better stored on a private platform. This can be achieved by hosting one's own docker registry.