<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Vlad V.</title>
    <description>The latest articles on DEV Community by Vlad V. (@voskvv).</description>
    <link>https://dev.to/voskvv</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F82614%2F7b9317c9-979f-469f-b529-50e38e957b5c.jpg</url>
      <title>DEV Community: Vlad V.</title>
      <link>https://dev.to/voskvv</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/voskvv"/>
    <language>en</language>
    <item>
      <title>How to launch Containerum platform in 5 minutes</title>
      <dc:creator>Vlad V.</dc:creator>
      <pubDate>Thu, 12 Jul 2018 15:31:36 +0000</pubDate>
      <link>https://dev.to/voskvv/how-to-launch-containerum-platform-in-5minutes-5442</link>
      <guid>https://dev.to/voskvv/how-to-launch-containerum-platform-in-5minutes-5442</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fqgaxqpaf65j0m290tns8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fqgaxqpaf65j0m290tns8.png" alt="containerum"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Kubernetes is a powerful orchestrator for docker containers with an impressive number of adopters and a large community around the world. Yet it is notorious for its complexity when it comes to configuration and maintenance. No wonder the community is busy developing new extensions and plugins to facilitate cluster management. &lt;/p&gt;

&lt;p&gt;Apart from well-established platforms widely used in production, there're also some interesting evolving projects. &lt;a href="http://github.com/containerum/containerum" rel="noopener noreferrer"&gt;Containerum&lt;/a&gt; is a Kubernetes-based platform that first was launched as a commercial cloud-based product but was recently released as open source. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I think it's a natural step for proprietary software in DevOps market since (as I believe) open source and DevOps are made for each other.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;So. Containerum is a project that works on top of Kubernetes and offers some interesting features. I used the Online version for some time and what I instantly liked about that is easy CI/CD pipeline configuration (I used Travis to build and deploy a website built with gulp and hugo). The open source version offers the same  features, but before exploring its features, let's try to install it. I'll be using a 3 RAM 1 CPU machine on Digital Ocean for test purposes. Let's start!&lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;

&lt;p&gt;To launch Containerum you will need &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;working Kubernetes cluster (1.5 or higher)&lt;/li&gt;
&lt;li&gt;Helm installed&lt;/li&gt;
&lt;li&gt;nginx ingress-contoller (see this guide)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;p&gt;We are going to do three things in this guide:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Install nginx ingress controller&lt;/li&gt;
&lt;li&gt;Create a service for the ingress controller&lt;/li&gt;
&lt;li&gt;Install Containerum&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Nginx ingress-controller
&lt;/h3&gt;

&lt;p&gt;I tried several nginx ingress-controller and the one I like more is the ingress-controller from the Kubernetes repository. To install it, run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/mandatory.yaml
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Done!&lt;/p&gt;

&lt;h3&gt;
  
  
  Create a service for ingress-controller
&lt;/h3&gt;

&lt;p&gt;After we've installed the ingress-controller, it's necessary to create a service that will be used for connecting the ingress controller with the Containerum ingress. Create a &lt;code&gt;yaml&lt;/code&gt; file with the following content:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;apiVersion: v1
kind: Service
metadata:
  name: ingress-nginx
  namespace: ingress-nginx
spec:
  ports:
  - name: http
    port: 80
    targetPort: 80
    protocol: TCP
  - name: https
    port: 443
    targetPort: 443
    protocol: TCP
  selector:
    app: ingress-nginx
  externalIPs:
  - 127.0.0.1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;Don't forget to add your machine's external IP address in the last line instead of &lt;code&gt;127.0.0.1&lt;/code&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Save it as &lt;code&gt;ingress-svc.yaml&lt;/code&gt; and run from the same directory:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;kubectl apply -f ingress-svc.yaml
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Done!&lt;/p&gt;

&lt;h3&gt;
  
  
  Installing Containerum
&lt;/h3&gt;

&lt;p&gt;Ok, now let's install Containerum. To install all components, run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;helm repo add containerum https://charts.containerum.io
helm repo update
helm install containerum/containerum --version 1.0.17-rc.2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now check that all pods are running:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;kubectl get pods
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fazsv0etkuo56ko0bi00s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fazsv0etkuo56ko0bi00s.png" alt="pods"&gt;&lt;/a&gt;&lt;br&gt;
As we can see, Containerum is running. Now let's access the Web UI.&lt;/p&gt;
&lt;h3&gt;
  
  
  Accessing the Web UI
&lt;/h3&gt;

&lt;p&gt;To access the Web UI, add an entry to your &lt;code&gt;hosts&lt;/code&gt; file. Open &lt;code&gt;/etc/hosts&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo nano /etc/hosts
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and add your machine's IP address to the list of hosts:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;127.0.10.1 local.containerum.io api.local.containerum.io
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;where 127.0.10.1 is the IP address of the machine.&lt;/p&gt;

&lt;p&gt;Now go to &lt;code&gt;local.containerum.io&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fqgaxqpaf65j0m290tns8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fqgaxqpaf65j0m290tns8.png" alt="containerum"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Congratulations! You've just installed Containerum platform in your cluster! You can use the default login/password: &lt;br&gt;
login: &lt;a href="mailto:admin@local.containerum.io"&gt;admin@local.containerum.io&lt;/a&gt;&lt;br&gt;
password: verystrongpassword&lt;/p&gt;

&lt;p&gt;I will continue exploring the platform, so stay tuned! &lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;br&gt;
Vlad&lt;/p&gt;

</description>
      <category>kubernetes</category>
      <category>containerization</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
