<?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: technonotes-hacker</title>
    <description>The latest articles on DEV Community by technonotes-hacker (@technonotes).</description>
    <link>https://dev.to/technonotes</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1120828%2Fa332bbb8-2a73-410a-8f25-400dfcef7aa6.png</url>
      <title>DEV Community: technonotes-hacker</title>
      <link>https://dev.to/technonotes</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/technonotes"/>
    <language>en</language>
    <item>
      <title>DAY 3 - SAGA Design Pattern</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Thu, 24 Sep 2026 03:49:04 +0000</pubDate>
      <link>https://dev.to/technonotes/day-3-saga-design-pattern-59lh</link>
      <guid>https://dev.to/technonotes/day-3-saga-design-pattern-59lh</guid>
      <description>&lt;ul&gt;
&lt;li&gt;To manage distributed transactions across multiple microservices.&lt;/li&gt;
&lt;li&gt;It divides a large transaction into a series of smaller local transactions.&lt;/li&gt;
&lt;li&gt;Executed independently.&lt;/li&gt;
&lt;li&gt;Each service performs its own transaction via events or commands.&lt;/li&gt;
&lt;li&gt;If one transaction fails --&amp;gt; compensating actions are executed to undo previously completed operations.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Distributed Transaction
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Multiple db or system working together to complete a single task.&lt;/li&gt;
&lt;li&gt;If any step fails --&amp;gt; the entire transaction may need to be rolled back.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why SAGA
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;To manage distributed transaction in microservices without using complex protocols like 2PC.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiiz5t9yp8ns4upuqp0j0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiiz5t9yp8ns4upuqp0j0.png" alt=" " width="800" height="276"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;All these are achieved because they are executed independently.&lt;/li&gt;
&lt;li&gt;2PC is notorious for blocking resource locks over a network, creating performance bottlenecks and single points of failure in high-throughput banking systems, whereas Saga decouples local transactions and relies on compensation.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Working of SAGA
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Distributed transactions by dividing them into a sequence of smaller transactions that execute independently across multiple services.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdt2o26h9aupc5vtxj9ds.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdt2o26h9aupc5vtxj9ds.png" alt=" " width="800" height="633"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Example
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhedyqvr9mwdmsy6w9a7l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhedyqvr9mwdmsy6w9a7l.png" alt=" " width="800" height="571"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Flow
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frpbio9laud4eii3hdt8m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frpbio9laud4eii3hdt8m.png" alt=" " width="800" height="423"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Approaches
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Choreography-Based Approach (Event-Driven)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;No central coordinator&lt;/li&gt;
&lt;li&gt;each service knows what to do ( independent )&lt;/li&gt;
&lt;li&gt;Events based via message queues or event streams.&lt;/li&gt;
&lt;li&gt;If a service fails --&amp;gt; it publishes a failure event accordyingly perform compensating actions.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Orchestration-Based Approach (Centralized)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;SAGA Execution Coordinator (orchestrator) controls the flow.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F60b8j2198kpvtvehyszf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F60b8j2198kpvtvehyszf.png" alt=" " width="799" height="628"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The orchestrator tells each service when to start, what to do, and when to proceed to the next step.&lt;/li&gt;
&lt;li&gt;In choreography, services listen to and emit events without a central coordinator. As the system scales, understanding the exact workflow path becomes complex, and accidental event loops can occur.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Advantages
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;flexibility &amp;amp; scalability --&amp;gt; to execute transactions independently without global locking.&lt;/li&gt;
&lt;li&gt;NO single points of failure since transactions are distributed across multiple services.&lt;/li&gt;
&lt;li&gt;fault tolerance --&amp;gt; ompensating actions to handle failures gracefully.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sagas embrace eventual consistency.&lt;/strong&gt; The system transitions through intermediate states, and good banking application UX transparently reflects this operational reality to the end user.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Dis-Advantages
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Increase system complexity due to distributed transaction handling and compensating operations.&lt;/li&gt;
&lt;li&gt;Consider how communication happens when there is no "conductor" or central manager directing the traffic between microservices&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Notes :
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;2PC --&amp;gt; two phase commit&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F29nd7zu83udev5r3v7g7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F29nd7zu83udev5r3v7g7.png" alt=" " width="800" height="479"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgxznmsd7xwxvakzq07ua.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgxznmsd7xwxvakzq07ua.png" alt=" " width="800" height="617"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fshn723wrmt84lfmsqb01.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fshn723wrmt84lfmsqb01.png" alt=" " width="800" height="588"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmf17skl7o1x6qgg85bbr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmf17skl7o1x6qgg85bbr.png" alt=" " width="800" height="549"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fs1ng4s47a4yqwvag6buv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fs1ng4s47a4yqwvag6buv.png" alt=" " width="799" height="599"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F66sodjthjdi2srjm1zy7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F66sodjthjdi2srjm1zy7.png" alt=" " width="800" height="579"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>backend</category>
      <category>microservices</category>
      <category>systemdesign</category>
    </item>
    <item>
      <title>Kubernetes - Day - 06 - Network Inside Docker</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Wed, 23 Sep 2026 18:19:50 +0000</pubDate>
      <link>https://dev.to/technonotes/kubernetes-day-06-network-inside-docker-lal</link>
      <guid>https://dev.to/technonotes/kubernetes-day-06-network-inside-docker-lal</guid>
      <description>&lt;h1&gt;
  
  
  Different types of Network
&lt;/h1&gt;

&lt;p&gt;Why we need to speak about network ? &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;How a container speak to anothe container ?&lt;/li&gt;
&lt;li&gt;How a container connect to internet ?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To answer all these questions we need to study different types of &lt;strong&gt;Network&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bridge Network ( default )
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;docker0 ( which is the default bridge )&lt;/li&gt;
&lt;li&gt;172.17.0.0/16
172.17 --&amp;gt; Blocked to &lt;strong&gt;Network&lt;/strong&gt; 
0.0/16 --&amp;gt; Available to the &lt;strong&gt;Host&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Uses IP tables&lt;/li&gt;
&lt;li&gt;docker 1 runs nginx &amp;amp; docker 2 runs postgres.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Default bridge&lt;/strong&gt; --&amp;gt; you can hit docker 1 to the other docker by IP not by its name.&lt;/li&gt;
&lt;li&gt;Container gets random IP's.&lt;/li&gt;
&lt;li&gt;They can't ping each other by name ( no DNS ), only by IP address. Because of this custom network exists.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fq43kz1sg4mh2u3sgpp67.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fq43kz1sg4mh2u3sgpp67.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;docker run -d --name web_nginx nginx&lt;br&gt;
docker run -d --name db_test postgres&lt;br&gt;
docker inspect web_nginx&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Bridge Network ( Custom )
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;docker run -d --name web_nginx --network mynetwork nginx&lt;br&gt;
docker run -d --name web_nginx --network mynetwork postgres&lt;br&gt;
docker exec -it web_nginx bash&lt;br&gt;
docker inspect db_test&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now we can see DNS in the inspect command.&lt;/li&gt;
&lt;li&gt;Inside my give network , i can speak via Domain Name. No need to know the IP. (this is advantage of the custom Bridge Network).&lt;/li&gt;
&lt;li&gt;Every user defined network gets automatic DNS.&lt;/li&gt;
&lt;li&gt;Containers reach each other by &lt;strong&gt;NAME&lt;/strong&gt;, &lt;strong&gt;not by IP&lt;/strong&gt; which is the recommended setup.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdshgmvew67oqutmfbuxs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdshgmvew67oqutmfbuxs.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Host Network
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;The container shares the host IP &amp;amp; port space entirely.&lt;/li&gt;
&lt;li&gt;Fasted option but no isolation.&lt;/li&gt;
&lt;li&gt;Port clashes are possible.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--network&lt;/span&gt; &lt;span class="k"&gt;**&lt;/span&gt;host&lt;span class="k"&gt;**&lt;/span&gt; nginx &lt;span class="o"&gt;(&lt;/span&gt; host &lt;span class="nt"&gt;--&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; its runs as &lt;span class="k"&gt;if &lt;/span&gt;like host &lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Instead of creating a separate environment , just run in my host itself.&lt;/li&gt;
&lt;li&gt;It will run as a process or a software.&lt;/li&gt;
&lt;li&gt;There won't be any IP allocated.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn9cdpa0udneyw0s6hpt2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn9cdpa0udneyw0s6hpt2.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  None
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;You run a container , it can't communicate to the outer world.&lt;/li&gt;
&lt;li&gt;It can used to run Any task.&lt;/li&gt;
&lt;li&gt;No request can be sent inside.&lt;/li&gt;
&lt;li&gt;It will be manily used for Job / cron tab.&lt;/li&gt;
&lt;li&gt;Its an isolated machine.&lt;/li&gt;
&lt;li&gt;Volume mount can be done and necessary packages can be run as container.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker run &lt;span class="nt"&gt;-it&lt;/span&gt; &lt;span class="nt"&gt;--network&lt;/span&gt; none alphine bash/sh
docker run &lt;span class="nt"&gt;-it&lt;/span&gt; &lt;span class="nt"&gt;--network&lt;/span&gt; none python:3.10.21-alphine3.23
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1kzmddvixo5m0x1z7vli.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1kzmddvixo5m0x1z7vli.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Overlay
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Its like tunnle. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9bqvl0fcxth2jswdoac3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9bqvl0fcxth2jswdoac3.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  MacVLan
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;A conatiner gets a REAL IP &amp;amp; MAC address on the physical network.&lt;/li&gt;
&lt;li&gt;Other networks won't have MAC address , only MacVLan will have the MAC address.&lt;/li&gt;
&lt;li&gt;It will be like " ஒரு laptop பக்கத்துல இன்னொரு laptop இருக்கிற மாதிரி ".
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ip addr &lt;span class="o"&gt;(&lt;/span&gt; check the IP of the machine &lt;span class="o"&gt;)&lt;/span&gt; Eg., 192.168.1.5/24
docker network create &lt;span class="nt"&gt;-d&lt;/span&gt; macvlan &lt;span class="nt"&gt;--subnet&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;192.168.1.0/24 &lt;span class="nt"&gt;--gateway&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;192.168.1.1 &lt;span class="nt"&gt;-0&lt;/span&gt; &lt;span class="nv"&gt;parent&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;wlp2s0 macvlan
docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--network&lt;/span&gt; macvlan_net
docker &lt;span class="nb"&gt;exec&lt;/span&gt; &lt;span class="nt"&gt;-it&lt;/span&gt; &amp;lt;number&amp;gt; bash
docker inspect &amp;lt;number&amp;gt; &lt;span class="o"&gt;(&lt;/span&gt; IP will be 192.168.1.2 &lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Eg., It will be used for legcy system to communicate eacf other.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdkynamo56cpyijbp7q8n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdkynamo56cpyijbp7q8n.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Commands
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker &lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-f&lt;/span&gt; &lt;span class="si"&gt;$(&lt;/span&gt;docker ps &lt;span class="nt"&gt;-aq&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;
docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--name&lt;/span&gt; web_nginx nginx
docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--name&lt;/span&gt; db_test postgres
docker inspect web_nginx &lt;span class="o"&gt;(&lt;/span&gt; it will show the default bridge network &lt;span class="o"&gt;)&lt;/span&gt;
docker logs &lt;span class="nt"&gt;-f&lt;/span&gt; db_test
docker network &lt;span class="nb"&gt;ls&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt; list the &lt;span class="nb"&gt;set &lt;/span&gt;of networks available &lt;span class="o"&gt;)&lt;/span&gt;
docker network create mynetwork &lt;span class="o"&gt;(&lt;/span&gt; its takes the default Bridge network &lt;span class="o"&gt;)&lt;/span&gt;
docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--name&lt;/span&gt; web_nginx &lt;span class="nt"&gt;--network&lt;/span&gt; mynetwork nginx
docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--name&lt;/span&gt; web_nginx &lt;span class="nt"&gt;--network&lt;/span&gt; mynetwork postgres
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Notes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;What is &lt;strong&gt;Redis&lt;/strong&gt; ? Redis is a free, open-source, in-memory data structure store used as a database, cache, message broker, and streaming engine.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devops</category>
      <category>docker</category>
      <category>infrastructure</category>
      <category>networking</category>
    </item>
    <item>
      <title>DAY - 2 - Encryption Technologies</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Wed, 23 Sep 2026 04:18:08 +0000</pubDate>
      <link>https://dev.to/technonotes/day-2-encryption-technologies-443i</link>
      <guid>https://dev.to/technonotes/day-2-encryption-technologies-443i</guid>
      <description>&lt;h2&gt;
  
  
  Cryptography Fundamentals
&lt;/h2&gt;

&lt;h1&gt;
  
  
  Symmetric Encryption
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Its a &lt;strong&gt;Private&lt;/strong&gt; Key.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Single shared secret key&lt;/strong&gt; for both encryption and decryption.&lt;/li&gt;
&lt;li&gt;Mainly used for bulk data processing.&lt;/li&gt;
&lt;li&gt;Algorithm used : &lt;strong&gt;AES&lt;/strong&gt; (Advanced Encryption Standard) and 3DES ( Triple Data Encryption Standard ).&lt;/li&gt;
&lt;li&gt;3DES is migrated to AES under current RBI cybersecurity guidelines.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3v8wq6t2yzkhac1x4lr2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3v8wq6t2yzkhac1x4lr2.png" alt=" " width="800" height="435"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Asymmetric Encryption
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Its a &lt;strong&gt;Public&lt;/strong&gt; Key.&lt;/li&gt;
&lt;li&gt;Uses a mathematically linked key pair (Public Key &amp;amp; Private Key)&lt;/li&gt;
&lt;li&gt;Data encrypted with the Public Key can only be decrypted by the corresponding Private Key.&lt;/li&gt;
&lt;li&gt;Algorithms include &lt;strong&gt;RSA&lt;/strong&gt; and &lt;strong&gt;ECC&lt;/strong&gt; (Elliptic Curve Cryptography).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9go05saijtjbfjqjhrsr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9go05saijtjbfjqjhrsr.png" alt=" " width="798" height="210"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdw3h3dxhmoz3vl3pv7yg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdw3h3dxhmoz3vl3pv7yg.png" alt=" " width="800" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Public Key Infrastructure (PKI)
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;PKI binds public keys to real-world identities using Digital Certificates issued by a trusted Certificate Authority (CA).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F91vb3r1z5g01iwvu2de3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F91vb3r1z5g01iwvu2de3.png" alt=" " width="800" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvu1mrgzf8fix58g3oqul.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvu1mrgzf8fix58g3oqul.png" alt=" " width="800" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Key Management
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Private&lt;/strong&gt; Key must never be shared or transmitted.&lt;/li&gt;
&lt;li&gt;It should ideally be stored inside a tamper-resistant &lt;strong&gt;Hardware Security Module (HSM)&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Hashing
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;one-way, irreversible function that takes an input and generates a fixed-size string.&lt;/li&gt;
&lt;li&gt;Used for data integrity.&lt;/li&gt;
&lt;li&gt;Algorithms: SHA-256, SHA-3&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Digital Signatures
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Provides Authentication, Non-repudiation, and Integrit.&lt;/li&gt;
&lt;li&gt;The sender &lt;strong&gt;hashes&lt;/strong&gt; the message and encrypts the hash using their Private Key.&lt;/li&gt;
&lt;li&gt;The recipient decrypts it using the sender’s Public Key to verify identity.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0dl10fmoomr3kgzaqvii.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0dl10fmoomr3kgzaqvii.png" alt=" " width="800" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Data Protection in Banking Environments
&lt;/h2&gt;

&lt;h1&gt;
  
  
  Data at Rest
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Stored data in databases, SAN, core banking systems.&lt;/li&gt;
&lt;li&gt;Protected using AES-256 &lt;strong&gt;Transparent Data Encryption (TDE)&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Data in Transit
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Data moving across networks.&lt;/li&gt;
&lt;li&gt;Secured via SSL/TLS (Transport Layer Security).&lt;/li&gt;
&lt;li&gt;TLS 1.2 or TLS 1.3.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2x7olalfwzcptm2dch9p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2x7olalfwzcptm2dch9p.png" alt=" " width="800" height="235"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Tokenization
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Replaces sensitive data (like a 16-digit Debit Card number) with a non-sensitive equivalent called a Token.&lt;/li&gt;
&lt;li&gt;The original data is stored in a secure centralized token vault. Essential for PCI-DSS compliance.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxvfk27710en45d7mfkfh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxvfk27710en45d7mfkfh.png" alt=" " width="800" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8zfxl86np5k0rbzpw6yc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8zfxl86np5k0rbzpw6yc.png" alt=" " width="800" height="489"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmnhtwxhxe53q0fa1zpfb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmnhtwxhxe53q0fa1zpfb.png" alt=" " width="800" height="145"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Data Masking
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Modifies the data structure so it remains unreadable to unauthorized users but retains its format (e.g., masking a bank account number as XXXXXX1234).&lt;/li&gt;
&lt;li&gt;It can be Static (altering data in a test database environment) or Dynamic (altering it on-the-fly based on user role privilege).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Files8fsnwytiy4agduwt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Files8fsnwytiy4agduwt.png" alt=" " width="799" height="470"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions Set 1
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqawwektn941vp86o9zpa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqawwektn941vp86o9zpa.png" alt=" " width="799" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm3vadoeq2i7ekgykq7yg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm3vadoeq2i7ekgykq7yg.png" alt=" " width="799" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6c8vzipncuumqsm1met0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6c8vzipncuumqsm1met0.png" alt=" " width="800" height="254"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhynz7d1i7tyewyl9avhs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhynz7d1i7tyewyl9avhs.png" alt=" " width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0nq7l4xza23wp9vuhhic.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0nq7l4xza23wp9vuhhic.png" alt=" " width="800" height="287"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fy4erlxvewmrznzrv7djs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fy4erlxvewmrznzrv7djs.png" alt=" " width="800" height="280"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0uhm2ww851cln64qfyxp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0uhm2ww851cln64qfyxp.png" alt=" " width="800" height="476"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fl7dpuq060ncpj6ozs2bv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fl7dpuq060ncpj6ozs2bv.png" alt=" " width="799" height="428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which international standard governs PIN block formatting (such as ISO Format 0, 1, 3, or 4) during ATM and POS transaction messaging? ISO 9564 defines the PIN management and security, including the exact structures for formatting PIN blocks.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flxa988dm37xf83b4y9jb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flxa988dm37xf83b4y9jb.png" alt=" " width="799" height="425"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Focsj51uumi7nx1cs8qo8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Focsj51uumi7nx1cs8qo8.png" alt=" " width="800" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fylt8dj7xmytj5scmats0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fylt8dj7xmytj5scmats0.png" alt=" " width="800" height="492"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F01gnjzzntktj4be5ej37.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F01gnjzzntktj4be5ej37.png" alt=" " width="799" height="479"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fabdi4gq22w0vfnw0fr6c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fabdi4gq22w0vfnw0fr6c.png" alt=" " width="799" height="486"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions Set 2
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8lppzxfptuug59d33oec.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8lppzxfptuug59d33oec.png" alt=" " width="800" height="341"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftyce4dvgo3ukgvp891l0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftyce4dvgo3ukgvp891l0.png" alt=" " width="800" height="358"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3dh6yhmjsbdvoded0fh5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3dh6yhmjsbdvoded0fh5.png" alt=" " width="800" height="368"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fggmjeoe4pl8l554t6cvb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fggmjeoe4pl8l554t6cvb.png" alt=" " width="800" height="353"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkc2m3tn0hwjxbhi6gowu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkc2m3tn0hwjxbhi6gowu.png" alt=" " width="799" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fev3ijoiesospl2l5o329.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fev3ijoiesospl2l5o329.png" alt=" " width="800" height="327"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Notes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;"Inherently provide" means that a feature is naturally, automatically, and permanently built into a system.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What is the one security feature you get AUTOMATICALLY from a Digital Signature, which you CANNOT get automatically from basic symmetric encryption (like AES or 3DES)?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1tvassx3f57r0j52q8q8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1tvassx3f57r0j52q8q8.png" alt=" " width="800" height="333"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxz5nyur1ouis8shu6e8g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxz5nyur1ouis8shu6e8g.png" alt=" " width="800" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbc76iaa5veikkr0icr3x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbc76iaa5veikkr0icr3x.png" alt=" " width="798" height="166"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Non-repudiation means that a person or entity cannot deny the authenticity of their signature on a document or the sending of a message that they originated. You cannot say '&lt;strong&gt;I didn't do it' when you actually did&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Digital Signatures use asymmetric encryption (Unique Private Keys) and are the only tool that inherently provides non-repudiation.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Vulnerability Assessment and Penetration Testing - VAPT&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Asymmetric encryption is computationally expensive for large files. How does reducing the data size help?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Online Certificate Status Protocol (OCSP)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Certificate Revocation Lists (CRLs)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Which apex body provides the digital certificate infrastructure and secure network backbone for RTGS transactions in India? &lt;strong&gt;IDRBT&lt;/strong&gt; stands for Institute for Development and Research in Banking Technology.IDRBT publishes the "Cyber Security Checklist for Banks" and frameworks for cloud computing, mobile banking security, and biometric authentication.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;1 Round Trip Time (1-RTT)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PCI-DSS ??&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>computerscience</category>
      <category>cybersecurity</category>
      <category>security</category>
    </item>
    <item>
      <title>Kubernetes - Day - 05 - IP Address &amp; Subnetting</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Mon, 21 Sep 2026 03:37:01 +0000</pubDate>
      <link>https://dev.to/technonotes/kubernetes-day-05-ip-address-subnetting-pcl</link>
      <guid>https://dev.to/technonotes/kubernetes-day-05-ip-address-subnetting-pcl</guid>
      <description>&lt;h2&gt;
  
  
  IP
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;IP is just an address.&lt;/li&gt;
&lt;li&gt;Every Server is an IP.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx0y5npycih4a8538f359.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx0y5npycih4a8538f359.png" alt=" " width="799" height="229"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffsvhnpkru91y3xw73udv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffsvhnpkru91y3xw73udv.png" alt=" " width="502" height="265"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Public IP Range&lt;/li&gt;
&lt;li&gt;Private IP Range &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9tigpn0kb9mru4ab3jmj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9tigpn0kb9mru4ab3jmj.png" alt=" " width="591" height="141"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Breaking the Public network to different subnet.&lt;/li&gt;
&lt;li&gt;/24 ( This refer to subnet )&lt;/li&gt;
&lt;li&gt;Private IP is just a namespace.&lt;/li&gt;
&lt;li&gt;All these are IPv4.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsxjjzvy3qc9jfjtxwucv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsxjjzvy3qc9jfjtxwucv.png" alt=" " width="799" height="654"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzkcw8545319rdim50xr6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzkcw8545319rdim50xr6.png" alt=" " width="511" height="424"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkqcudl5x827pf60adyx8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkqcudl5x827pf60adyx8.png" alt=" " width="441" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I can restrict/seggregate the subnet.&lt;/li&gt;
&lt;li&gt;/32 is the last.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Notes
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Subnet means Private.&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Kubernetes - Day - 04 - Docker Commands</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Mon, 21 Sep 2026 02:11:36 +0000</pubDate>
      <link>https://dev.to/technonotes/kubernetes-day-04-docker-commands-4kbo</link>
      <guid>https://dev.to/technonotes/kubernetes-day-04-docker-commands-4kbo</guid>
      <description>&lt;h2&gt;
  
  
  IMAGES
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker images
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;alpine images &amp;amp; bookworm images ( these are like families ) --&amp;gt; these are small images to be used for 10 mb application rather than going for bigger version of OS.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker pull ubuntu:noble-20260810
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fulvv9oqfdq3w7w8emwit.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fulvv9oqfdq3w7w8emwit.png" alt=" " width="800" height="502"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft4w8ym6dgwhu5sqqb6d3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft4w8ym6dgwhu5sqqb6d3.png" alt=" " width="799" height="388"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker ps [ process status ]
ps aux [ process which are running currenlty ]
docker ps [ currently running containers ]
docker ps -a [ provides the list of images which are Exited ]
docker rm $(docker ps -aq)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker run ubuntu 
docker ps -a [ Now , this will show as Exited ]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Why ? "docker run ubuntu" --&amp;gt; This command didn't tell anythig to do. So it will be EXITED.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker run ubuntu ls
docker ps -a [ Now , this will show as Exited with ls ]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa9jv6i1lzdluoi3hn09c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa9jv6i1lzdluoi3hn09c.png" alt=" " width="799" height="122"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you want to create a IMAGE , then there should be always a entry-point.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker run -d ubuntu bash         [ D for daemon ]
docker run -it ubuntu bash        [ bash is a shell command ]
docker exec -it  &amp;lt;container_id&amp;gt;   [ exec means execute ]
docker run -it ubuntu sleep 10
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;11 characters will be displayed in container ID.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa6pl2dn2y98rmnjvp3id.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa6pl2dn2y98rmnjvp3id.png" alt=" " width="325" height="576"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker pull redis
docker run redis
In another terminal --&amp;gt; docker ps -a
In another terminal --&amp;gt; docker exec -it &amp;lt;container_id&amp;gt; bash
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker run -d --name webapp-nginx nginx 
docker ps [ it will be showing UP ]
docker exec -it &amp;lt;container_id&amp;gt; bash
docker stop &amp;lt;name or container_id&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;nginx will run in 80 port by default.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker run -d --name webapp -p 8090:80 nginx
docker exec -it &amp;lt;container_id&amp;gt; bash
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Inside the container --&amp;gt; curl &lt;a href="http://localhost:80" rel="noopener noreferrer"&gt;http://localhost:80&lt;/a&gt; --&amp;gt; will get the response.&lt;br&gt;
Outside the container --&amp;gt; curl &lt;a href="http://localhost:8090" rel="noopener noreferrer"&gt;http://localhost:8090&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Whatever its inside the container , it gets exposed to the host outside via pot mapped.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Logs
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker logs -f &amp;lt;container_id or name&amp;gt;  [ Continuous logs ]
docker stop &amp;lt;container_id or name&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Bind
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker run -d --name webapp -p 8090:80 -v "./html":"/usr/share/nginx/html" nginx

docker run --rm -d --name webapp -p 8090:80 -v "./html":"/usr/share/nginx/html" nginx [ If the container is stopped , don't wait for my signal , yiu automatically delete it , so only we are using **--rm** ]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;docker inspect &amp;lt;container_id or name&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;There will be one private ip assigned.&lt;/li&gt;
&lt;li&gt;Run the curl with the private IP , it will load the page.&lt;/li&gt;
&lt;li&gt;In host , curl http://:80/ &amp;amp; curl http://:8090/&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Docker Basic Command
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7o4ijonfb6k2gpflw1ps.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7o4ijonfb6k2gpflw1ps.png" alt=" " width="580" height="123"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Docker Images Command
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjg711ipgwwwwwvihv142.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjg711ipgwwwwwvihv142.png" alt=" " width="793" height="223"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Docker Containers Command
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fylb9abub0jwjw7aa3tcb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fylb9abub0jwjw7aa3tcb.png" alt=" " width="800" height="332"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Docker Networks Command
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9cic2bdcmd87jt5aqtzn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9cic2bdcmd87jt5aqtzn.png" alt=" " width="798" height="162"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Docker Volumes Command
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwz5nb7vz5j94c2w7iqia.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwz5nb7vz5j94c2w7iqia.png" alt=" " width="798" height="195"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Docker Compose Command
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2ic7z00y4pbwttfox20j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2ic7z00y4pbwttfox20j.png" alt=" " width="800" height="273"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Dockerfile Directives Command
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqec7atq2alo4yhxsy5t7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqec7atq2alo4yhxsy5t7.png" alt=" " width="799" height="257"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Docker Cleanup Command
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fi7183wup2ck8bt42li09.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fi7183wup2ck8bt42li09.png" alt=" " width="799" height="179"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Docker Miscellaneous Command
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmq7268qvbouzuuhjj6ad.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmq7268qvbouzuuhjj6ad.png" alt=" " width="799" height="195"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Notes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Redis , Postgress --&amp;gt; will have base OS , as these are application.&lt;/li&gt;
&lt;li&gt;Entry-Point, Command &amp;amp; Expose. --&amp;gt; Important Terminology&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devops</category>
      <category>docker</category>
      <category>kubernetes</category>
    </item>
    <item>
      <title>Kubernetes - Day - 03 - File Permissions, Bind Mount</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Mon, 21 Sep 2026 00:51:32 +0000</pubDate>
      <link>https://dev.to/technonotes/kubernetes-day-03-file-permissions-bind-mount-336c</link>
      <guid>https://dev.to/technonotes/kubernetes-day-03-file-permissions-bind-mount-336c</guid>
      <description>&lt;h2&gt;
  
  
  File Permission
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fafk0503qu2ywupgzwxn0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fafk0503qu2ywupgzwxn0.png" alt=" " width="336" height="193"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhzphxcjjsksycnftfiwf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhzphxcjjsksycnftfiwf.png" alt=" " width="559" height="147"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9esq74yol0gjhme31ksk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9esq74yol0gjhme31ksk.png" alt=" " width="478" height="117"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;- &lt;span class="nb"&gt;chmod &lt;/span&gt;600 &amp;lt;file_name&amp;gt;
- &lt;span class="nb"&gt;chmod&lt;/span&gt; &lt;span class="nt"&gt;-R&lt;/span&gt; 6-- &amp;lt;folder_name&amp;gt;
- R &lt;span class="nt"&gt;--&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; Recurrsive
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  What is UMASK ?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;This is for default permission.&lt;/li&gt;
&lt;li&gt;just type "umask".&lt;/li&gt;
&lt;li&gt;Reply 0002 ( what it means ? )&lt;/li&gt;
&lt;li&gt;Don't take the first 0. It will be for directory.&lt;/li&gt;
&lt;li&gt;It will give 666 (rw- rw- rw-) --&amp;gt; 666 - 002 --&amp;gt; 664.&lt;/li&gt;
&lt;li&gt;The result is ( rw- rw- r-- )&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Bind Mount
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv5dzjslwtltiwn88lf9e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv5dzjslwtltiwn88lf9e.png" alt=" " width="799" height="422"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;mount &lt;span class="nt"&gt;--bind&lt;/span&gt; &amp;lt;src_folder&amp;gt; &amp;lt;dest_folder&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;A folder is like HOST.&lt;/li&gt;
&lt;li&gt;B folder is like Container.&lt;/li&gt;
&lt;li&gt;This is literally called as Volume. &lt;/li&gt;
&lt;li&gt;Bind Mount is nothing buta VOLUME.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Commands
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;docker run -v "./data":"/home/data" ubuntu bash&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Architecture
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjktcfzk4exbfop4pipa1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjktcfzk4exbfop4pipa1.png" alt=" " width="800" height="521"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Image is RO.&lt;/li&gt;
&lt;li&gt;No in-place updation for image , only new image can be created.&lt;/li&gt;
&lt;li&gt;Each image will have different layers.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Notes :
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Container is nothing but spinning of an image using Docker.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devops</category>
      <category>kubernetes</category>
      <category>linux</category>
    </item>
    <item>
      <title>Kubernetes - Day - 02 - PID/Signals/Mount</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Sun, 20 Sep 2026 14:11:18 +0000</pubDate>
      <link>https://dev.to/technonotes/kubernetes-day-02-pidsignalsmount-3345</link>
      <guid>https://dev.to/technonotes/kubernetes-day-02-pidsignalsmount-3345</guid>
      <description>&lt;h1&gt;
  
  
  Docker
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Pull the details from docker register.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker pull nginx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;its hub repository.&lt;/li&gt;
&lt;li&gt;Want to run the image which is pulled.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--name&lt;/span&gt; web-demo-test nginx &lt;span class="o"&gt;[&lt;/span&gt; You will get the ID &lt;span class="o"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;--&amp;gt; d for detatched mode&lt;br&gt;
--&amp;gt; Conatiner is nothing but &lt;strong&gt;THE RUNNING INSTANCE OF THE IMAGE&lt;/strong&gt;.&lt;br&gt;
--&amp;gt; From one image , we can run many instance.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker ps &lt;span class="o"&gt;[&lt;/span&gt; all the alive running containers &lt;span class="o"&gt;]&lt;/span&gt;
docker ps &lt;span class="nt"&gt;-a&lt;/span&gt; &lt;span class="o"&gt;[&lt;/span&gt; all the running containers , NOT RUNNING but exited &lt;span class="o"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;--&amp;gt; -ps [ process status ]&lt;/p&gt;

&lt;h2&gt;
  
  
  What is process ?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Running instance of a program.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  what is program ?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Its in storage/memory, once it runs goes to RAM.&lt;/li&gt;
&lt;li&gt;In RAM, some slot will be assigned to that process.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;--&amp;gt; First running process will be allocate PID as 1.&lt;br&gt;
--&amp;gt; No parents will be there for 1.&lt;br&gt;
--&amp;gt; all other process will be the child of it.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ps aux &lt;span class="o"&gt;[&lt;/span&gt; snapshot of all process &lt;span class="o"&gt;]&lt;/span&gt;
pstree &lt;span class="o"&gt;[&lt;/span&gt; In tree structure &lt;span class="o"&gt;]&lt;/span&gt;
pstree &lt;span class="nt"&gt;-p&lt;/span&gt; &lt;span class="o"&gt;[&lt;/span&gt; PID will be displayed &lt;span class="o"&gt;]&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;--&amp;gt; docker is a container.&lt;br&gt;
--&amp;gt; Inside docker , some application is going to RUN , that will also have the PID.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker &lt;span class="nt"&gt;-ps&lt;/span&gt; a
ps aux | &lt;span class="nb"&gt;grep &lt;/span&gt;nginx
docker &lt;span class="nb"&gt;exec&lt;/span&gt; &lt;span class="nt"&gt;-it&lt;/span&gt; &amp;lt;container &lt;span class="nb"&gt;id &lt;/span&gt;from docker &lt;span class="nt"&gt;-ps&lt;/span&gt; a&amp;gt; bash
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Inside the container when I try to install ps ( sudo apt install procps ) then PID is assigned.&lt;/li&gt;
&lt;li&gt;Now nginx is running inside the container with different PID , and in the host , when we check with PID its running with different PID. But the container is running inside the HOST only.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now Lets try to kill,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;kill the nginx with PID in the host.&lt;/li&gt;
&lt;li&gt;When we check "docker ps -a" its shows like "Exited".&lt;/li&gt;
&lt;li&gt;That means, the process which is running inside the container is using the HOST machine kernel.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcswmwfammdxexk093mgu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcswmwfammdxexk093mgu.png" alt=" " width="800" height="562"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker images &lt;span class="o"&gt;[&lt;/span&gt; Display list of images &lt;span class="o"&gt;]&lt;/span&gt;
docker rmi &amp;lt;image &lt;span class="nb"&gt;id&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="o"&gt;[&lt;/span&gt; It won&lt;span class="s1"&gt;'t delete if the image is running ]
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;What is namespace ?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;PID is a namespace.&lt;/li&gt;
&lt;li&gt;its like a separation from others.&lt;/li&gt;
&lt;li&gt;even a domain name is a namespace.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;- docker inspect &lt;span class="nt"&gt;--format&lt;/span&gt; &lt;span class="s1"&gt;'{{ .state.Pid }}'&lt;/span&gt; web-demo-test &lt;span class="o"&gt;[&lt;/span&gt; This will give the process &lt;span class="nb"&gt;id&lt;/span&gt; &lt;span class="o"&gt;]&lt;/span&gt;
- &lt;span class="nb"&gt;ls&lt;/span&gt; &lt;span class="nt"&gt;-l&lt;/span&gt; /proc/&amp;lt;pid&amp;gt;/ns
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  SIGTERM
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Terminate --&amp;gt; Graceful shutdown --&amp;gt; 15.&lt;/li&gt;
&lt;li&gt;Forefull termination --&amp;gt; 09 --&amp;gt; No clean up process --&amp;gt; SIGKILL.&lt;/li&gt;
&lt;li&gt;control + c --&amp;gt; 02&lt;/li&gt;
&lt;li&gt;Without stopping the application or long running daemon process , ssh / nginx , we can update without restarting --&amp;gt; 01 --&amp;gt;SIGUP.&lt;/li&gt;
&lt;li&gt;Pause a process --&amp;gt; 19&lt;/li&gt;
&lt;li&gt;SIGCONT --&amp;gt; 18
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;- docker logs &lt;span class="nt"&gt;-f&lt;/span&gt; &amp;lt;container_id&amp;gt; &lt;span class="o"&gt;[&lt;/span&gt; To get the logs of the container &lt;span class="o"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Create a small python program in container like below , 
&lt;code&gt;import time
while True:
    print("Hi")
    time.sleep(1)&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fb36zq89ltl067qkymitn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fb36zq89ltl067qkymitn.png" alt=" " width="756" height="285"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3brh7nfp61n0vc375yej.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3brh7nfp61n0vc375yej.png" alt=" " width="727" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  FILE PERMISSION / BINDING
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Mount ? What is mount ? &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhahwtkvgdm0qun7w5stm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhahwtkvgdm0qun7w5stm.png" alt=" " width="800" height="417"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the same concept , we have "LINK" in windows eg., shotcut.&lt;/li&gt;
&lt;li&gt;Symlink.&lt;/li&gt;
&lt;li&gt;Even RBAC we can set.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Notes :
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;head  --&amp;gt; It will show the &lt;/li&gt;
&lt;li&gt;Image is also a OS. Image ஓட running instanceதான் Container.&lt;/li&gt;
&lt;li&gt;Container won't have size &lt;strong&gt;[ COW ] Copy on write&lt;/strong&gt;. The Container will refer all from images. &lt;/li&gt;
&lt;li&gt;So only we can't delete a image when a container is running. ( When the application in the container creates some files , that only will have the size ).&lt;/li&gt;
&lt;li&gt;Daemon process --&amp;gt; running in the back-ground.&lt;/li&gt;
&lt;li&gt;systemd --&amp;gt; what is "d" here ? No one knows.&lt;/li&gt;
&lt;li&gt;Containerகுள்ள ஓடுற Process ID வந்து நம்ம 1ல தான் start ஆகுது , but  அதே process , host machineல ,  வேற ஒரு process IDல ஓடுது.  நம்ப Conatinerர  ஏமாத்துறோம் Indirect ha. Internalலா , host machine kernel is used. &lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>devops</category>
      <category>docker</category>
      <category>linux</category>
    </item>
    <item>
      <title>Kubernetes - Day - 01 - Docker Intro</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Sun, 20 Sep 2026 08:33:13 +0000</pubDate>
      <link>https://dev.to/technonotes/kubernetes-day-01-47ig</link>
      <guid>https://dev.to/technonotes/kubernetes-day-01-47ig</guid>
      <description>&lt;h2&gt;
  
  
  Why Docker ?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;What Docker resolves ? --&amp;gt; Lets see , before that lets see some in-depth concepts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbi63f0yv3v04a5evjf5q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbi63f0yv3v04a5evjf5q.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc95a58gspot44ktllihg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc95a58gspot44ktllihg.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyjzvearcvxum6dbrl88r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyjzvearcvxum6dbrl88r.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  CONTAINERS
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Femmwbe9hzjblakrl1f05.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Femmwbe9hzjblakrl1f05.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;App&lt;/li&gt;
&lt;li&gt;Base OS what you need ( Mostly it will be linux flavour )&lt;/li&gt;
&lt;li&gt;Requirements ( packages )&lt;/li&gt;
&lt;li&gt;what to run.&lt;/li&gt;
&lt;li&gt;Even Python can be a base OS.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;With these entire item we can make a package and we can build a image and deploy.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;With this image --&amp;gt; &lt;strong&gt;spawn into CONTAINER&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Container is purely LINUX based.&lt;/li&gt;
&lt;li&gt;Sometimes it runs in windows , how ? WSL - Windows Subsystem Linux Layer.&lt;/li&gt;
&lt;li&gt;How this is working , in Linux , we have CGROUP , which allows the windows to run or support.&lt;/li&gt;
&lt;li&gt;இந்த Container technologyயை ஒரு service கொடுக்கிறது தான் --&amp;gt; Many tools are there , One such company is DOCKER , PODMAN.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In DOCKER --&amp;gt; Docker Engine is Open-Source. If you are planning to use Docker Desktop then you need to pay.&lt;br&gt;
In Podman --&amp;gt; All are Open-Source.&lt;/p&gt;

&lt;h2&gt;
  
  
  COMMONDS
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;- docker pull ubuntu
- docker run &lt;span class="nt"&gt;-it&lt;/span&gt; ubuntu bash
- docker ps &lt;span class="nt"&gt;-a&lt;/span&gt;
- docker &lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-f&lt;/span&gt; &lt;span class="si"&gt;$(&lt;/span&gt;docker ps &lt;span class="nt"&gt;-aq&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Notes :
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Bare Metal -- &amp;gt; Its like a simple laptop with OS. ஒரு OS அதுக்கப்புறம் Applicationக்கு தேவைப்படுற files அவ்வளவுதான் இருக்கும்.&lt;/li&gt;
&lt;li&gt;Image is nothing but OS  or the application itself , from image it will become CONTAINER.&lt;/li&gt;
&lt;li&gt;Many Images are called Registery.&lt;/li&gt;
&lt;li&gt;With 40mb we can spawn a OS- Ubuntu. See below.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fi77l7vc2t01rgbe1zibx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fi77l7vc2t01rgbe1zibx.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  TBD :
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;What is redis ?&lt;/li&gt;
&lt;li&gt;Just learn docker engine installation.&lt;/li&gt;
&lt;li&gt;What is CGROUGS ?&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  LEARN
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5qzv23ujgr6jib3wpsp6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5qzv23ujgr6jib3wpsp6.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>k8intamil</category>
      <category>kubernetes</category>
    </item>
    <item>
      <title>LLM - Day 3 - Prompt Eng 2</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Fri, 18 Sep 2026 02:12:30 +0000</pubDate>
      <link>https://dev.to/technonotes/llm-day-3-prompt-eng-2-3ffc</link>
      <guid>https://dev.to/technonotes/llm-day-3-prompt-eng-2-3ffc</guid>
      <description>&lt;h2&gt;
  
  
  REACT Framework ( Reasoning &amp;amp; Action )
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;LLM is model or a model file.&lt;/li&gt;
&lt;li&gt;இப்ப ஒரு LLM Model வந்து என்கிட்ட இருக்கு , அந்த Model வந்து ஏதோ ஒரு set of dataவால train ஆகியிருக்கும் நான் இப்ப query கொடுத்தா அது எனக்கு ஒரு response தரும்.&lt;/li&gt;
&lt;li&gt; இப்ப நான் அது கிட்ட போயிட்டு இன்னைக்கு gold rate எவ்ளோ என்று கேட்டால் அது தருமா ? தராதா ? &lt;/li&gt;
&lt;li&gt;LLM --&amp;gt; Algorithm and pre-trained data is a Model. Also LLM is a file.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fve45nl2qu91voobe060h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fve45nl2qu91voobe060h.png" alt=" " width="800" height="382"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If LLM can't do anything , it will expect an ACTION or some other tools.&lt;/li&gt;
&lt;li&gt;Tools are called as programs.&lt;/li&gt;
&lt;li&gt;Programs are called scripts.&lt;/li&gt;
&lt;li&gt;LLM + Tools ( Tools nothing but a script ).&lt;/li&gt;
&lt;li&gt;Can a LLM call another file ? Yes , you can call the tool is AGENT.&lt;/li&gt;
&lt;li&gt;Its called &lt;strong&gt;TOOL CALLING&lt;/strong&gt; --&amp;gt; He is nothing but &lt;strong&gt;AGENT&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;In framework we have RICE Pattern.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For this pattern we give --&amp;gt; &lt;strong&gt;R&lt;/strong&gt;ole , &lt;strong&gt;I&lt;/strong&gt;nput , &lt;strong&gt;C&lt;/strong&gt;ontraints , &lt;strong&gt;E&lt;/strong&gt;xpectations will be provided and ask the query.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fj5pix2h6v3ppzhb333uc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fj5pix2h6v3ppzhb333uc.png" alt=" " width="418" height="343"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In framework we have CRISP Pattern.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For this pattern we give --&amp;gt; &lt;strong&gt;C&lt;/strong&gt;ontext , &lt;strong&gt;R&lt;/strong&gt;ole , &lt;strong&gt;I&lt;/strong&gt;nstruction , &lt;strong&gt;S&lt;/strong&gt;tyle , &lt;strong&gt;P&lt;/strong&gt;urpose.&lt;/li&gt;
&lt;li&gt;Eg., Blog writing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3x3amx58pjguitxv6qm2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3x3amx58pjguitxv6qm2.png" alt=" " width="550" height="214"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TOOL CALLING - AGENT&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3m0dc8soeu2dy4rmr82j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3m0dc8soeu2dy4rmr82j.png" alt=" " width="800" height="379"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;run_example.py file will import all items from the techniques folder and then running each one functionalities.&lt;/li&gt;
&lt;li&gt;need to be installed all these to run. &lt;strong&gt;pip install -r file_name&lt;/strong&gt; , requirement file.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frtsls2lqhd2buvmaze7n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frtsls2lqhd2buvmaze7n.png" alt=" " width="283" height="238"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To create a Agent " langchanin " is enough.&lt;/li&gt;
&lt;li&gt;LLM + Tool --&amp;gt; to orchestrate these two is AGENT.&lt;/li&gt;
&lt;li&gt;.env will have API key of the groq. ( which will connect to the cloud LLM ) why we are connecting like this ? Because we can't run the LLM in the local as we are going to use &lt;strong&gt;gpt-oss-120b&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Render the messages is also available.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Zero-Shot&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;run_prompt &lt;/li&gt;
&lt;li&gt;**ChatPromptTemplate **is from langchain package.&lt;/li&gt;
&lt;li&gt;All will be passed in &lt;strong&gt;LIST&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;No example will be given for this Zero-shot&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Few-Shot&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Example will be given.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Tree of thought&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Option based [TBD]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Chain of thought&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Role based&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Instruction based&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Contextual Prompting&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Self consistency&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;React&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Notes :&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Many frameworks are there --&amp;gt; like CARS.&lt;/li&gt;
&lt;li&gt;Groq --&amp;gt; Infra provider for LLM.&lt;/li&gt;
&lt;li&gt;llama3 &amp;amp; gpt-oss 120B --&amp;gt; these are two models which are predominantly used.&lt;/li&gt;
&lt;li&gt;langchain is more stable to create a agent.&lt;/li&gt;
&lt;li&gt;Temperature --&amp;gt; based on facts or closely/choice.&lt;/li&gt;
&lt;li&gt;Don't memorize the code , because each framework is differemt. Just get the flow.&lt;/li&gt;
&lt;li&gt;How the model are choosen ? Hugging face ( they will give the model ) , ollama.&lt;/li&gt;
&lt;li&gt;Image --&amp;gt; Blip Model.&lt;/li&gt;
&lt;li&gt;Text --&amp;gt; Qwen Model.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flbfwbbf7zk6ge3qe2upt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flbfwbbf7zk6ge3qe2upt.png" alt=" " width="800" height="544"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fz7532xlrquhc1ge9ucix.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fz7532xlrquhc1ge9ucix.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>promptengineering</category>
    </item>
    <item>
      <title>LLM - Day 5 - RAG a Intro</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Thu, 17 Sep 2026 23:49:11 +0000</pubDate>
      <link>https://dev.to/technonotes/llm-day-5-rag-a-intro-31p3</link>
      <guid>https://dev.to/technonotes/llm-day-5-rag-a-intro-31p3</guid>
      <description>&lt;h2&gt;
  
  
  Retrievel Augment Generation
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;3 different Topics&lt;/li&gt;
&lt;li&gt;when we need RAG ? You have Private Data Source Eg., கம்பெனி குள்ள இருக்கிற Confluence dataஓ or documents ( these won't be available to public )&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1g1emtqye17gas7qntpe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1g1emtqye17gas7qntpe.png" alt=" " width="800" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The above funcationality should be available for my private data also. Eg., In my company leave policy.&lt;/li&gt;
&lt;li&gt;This is resolved by RAG.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Favyzohzc3rh3mg7l7pbu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Favyzohzc3rh3mg7l7pbu.png" alt=" " width="799" height="481"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;RAG Architecture&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3boctgy1gt8revla5k4e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3boctgy1gt8revla5k4e.png" alt=" " width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;3 parts are there.&lt;/li&gt;
&lt;li&gt;Pre-processing steps --&amp;gt; RAG , ready பண்றதுக்கு முன்னாடி நான் இதெல்லாம் செய்யணும். இந்த diagramல dash dash இருக்குல்ல அதுதான்&lt;/li&gt;
&lt;li&gt;Before pre-processing , let me draw a graph. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhqj4g04e0wempjsqwud8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhqj4g04e0wempjsqwud8.png" alt=" " width="800" height="574"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Orange &lt;strong&gt;x&lt;/strong&gt; pointகு closeசா இருக்கிற point சொல்லுங்க. So [8,9,5] . How you told these point , how you processed ? Going to take distance of all points then sort. This is what we are going to get in &lt;strong&gt;Pre-processing&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Blue &lt;strong&gt;x&lt;/strong&gt; are the chunks. what is &lt;strong&gt;Chunks&lt;/strong&gt; ? A part. A part of what ? its the documents.&lt;/li&gt;
&lt;li&gt;Eg., 500 character is a chunck. C1 . Then again C2 ... C5 etc , entire documents.எல்லா documentமெண்ட்டையும் துண்டு துண்டா உடைக்கும்.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F84hi97qmkzic208fz01r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F84hi97qmkzic208fz01r.png" alt=" " width="799" height="288"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now all chunks C1 C2 etc is given to MODEL which is a &lt;strong&gt;EMBEDDING Model.&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;This EMBEDDING Model will give POINT.&lt;/li&gt;
&lt;li&gt;Eg., You are very good food industry. &lt;/li&gt;
&lt;li&gt;ஒரு ஒரு chunkகும் ஒரு ஒரு point. Related items occur closer together.&lt;/li&gt;
&lt;li&gt;These points will be put in graph. You are creating a cluster like , with similar topics together.&lt;/li&gt;
&lt;li&gt;EMBEDDING Model is nothing but LLM also it contains Transformer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;In simple -&amp;gt; நீ ஒரு TEXT குடுக்குற நான் ஒரு POINT கொடுக்கிறேன், அவ்வளவுதான்&lt;/strong&gt; indirectly a Knowledge source.&lt;/li&gt;
&lt;li&gt;So they are in &lt;strong&gt;MULTIDIMENTIONAL SPACE&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;For a single chunk it will be 786D ( it means 786 different points ). To create this dimention , &lt;strong&gt;VECTOR DATABASE&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Vector &amp;amp; Embedding are almost similar. ( Here Vector will have direction in addition ).&lt;/li&gt;
&lt;li&gt;Before giving to LLM , it will be chunked.&lt;/li&gt;
&lt;li&gt;Vector DB eg., softwares below &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftp5qzqjhxn2cbnw8wxst.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftp5qzqjhxn2cbnw8wxst.png" alt=" " width="631" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbydrqsjn8u1d0zh27vf1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbydrqsjn8u1d0zh27vf1.png" alt=" " width="787" height="646"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Orange &lt;strong&gt;X&lt;/strong&gt; is the query.&lt;/li&gt;
&lt;li&gt;With this query , give me the TOP-K elements கொண்டு வா . &lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;One is &lt;strong&gt;Distance&lt;/strong&gt; , It will give shortest distance algorithm like ( euclidean algorithm , manhattan algorithm , etc ).&lt;/li&gt;
&lt;li&gt;Another is &lt;strong&gt;Cosine similarity&lt;/strong&gt; --&amp;gt; &lt;strong&gt;Lesser the angle , these points are more similar or closer to each other.&lt;/strong&gt; , also its &lt;strong&gt;SEMENTIC&lt;/strong&gt;. what is Sementic ? Occur close together. Eg., Rice and Biriyani , but indirectly they are close together. In simple , how similar these two points are.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnh0mcn2nvwwnkuxpyg1m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnh0mcn2nvwwnkuxpyg1m.png" alt=" " width="800" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo525zlkjjwu4stc5uvb4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo525zlkjjwu4stc5uvb4.png" alt=" " width="800" height="448"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Contexts --&amp;gt; Actual data from Vector DB. (this is nothing but the meta data). &lt;/li&gt;
&lt;li&gt;Query + context --&amp;gt; you have right now.&lt;/li&gt;
&lt;li&gt;Now with this &lt;strong&gt;AUGUMENT&lt;/strong&gt; , its nothing but "&lt;strong&gt;PROMPT&lt;/strong&gt;". &lt;/li&gt;
&lt;li&gt;&lt;p&gt;This Prompt will have "Query + context" then format , etc etc all condition. இந்த processசஸ ரெடி பண்றதுக்கு பேருதான் Augument.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Now we will give this to LLM. Eg., chatgpt , gemini.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;For this LLM , its a query.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How the dynamic doc are handled ? Recreate or upend. Depends on the documents.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fckakpc4rgh5dyls7d0zz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fckakpc4rgh5dyls7d0zz.png" alt=" " width="800" height="433"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Notes&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;"Confluence data" or data confluence means தரவு சங்கமம் (Tharavu Sangamam) — the combining of different data sources, streams, or types into one single place or system.&lt;/li&gt;
&lt;li&gt;obsidian graph&lt;/li&gt;
&lt;li&gt;&lt;a href="https://plotly.com/python/3d-scatter-plots/" rel="noopener noreferrer"&gt;https://plotly.com/python/3d-scatter-plots/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Augument means COMBINING.&lt;/li&gt;
&lt;li&gt;Query is Orange X and Blue is Chunks. Along with the point , a meta data will be stored . &lt;strong&gt;DATA ABOVE THE POINT&lt;/strong&gt; .&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjcnejkvvqbhy6xz9fgut.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjcnejkvvqbhy6xz9fgut.png" alt=" " width="800" height="523"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F03n4q3ejrpr6lktne4jf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F03n4q3ejrpr6lktne4jf.png" alt=" " width="800" height="414"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>rag</category>
      <category>letslearnrag</category>
      <category>ragintamil</category>
    </item>
    <item>
      <title>LLM - Day 1 - Intro</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Thu, 17 Sep 2026 19:19:41 +0000</pubDate>
      <link>https://dev.to/technonotes/llm-day-1-lets-learn-ai-4p9l</link>
      <guid>https://dev.to/technonotes/llm-day-1-lets-learn-ai-4p9l</guid>
      <description>&lt;h2&gt;
  
  
  Large Language Model
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Its a model&lt;/li&gt;
&lt;li&gt;what is a model ? its a equation.&lt;/li&gt;
&lt;li&gt;Then what is equation ? y = mx + c or y = m1x2 + m2x3 + m3x2&lt;/li&gt;
&lt;li&gt;Models are nothing but WEIGHTS.&lt;/li&gt;
&lt;li&gt;Take an example Eg: gpt-oss-120b , for this model they would have used data with TRANSFORMER ARCHITECTURE and we are getting some output that is called MODEL.
m --&amp;gt; weights ( we can adjust the m and get many desierd outputs )&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fav7dzvigplvpatxw4ne7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fav7dzvigplvpatxw4ne7.png" alt=" " width="800" height="365"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Model is floating point storage.&lt;/li&gt;
&lt;li&gt;சில பேரு சொல்லுவாங்க இது வந்து 120B Paramter model , what it means ? These Parameters are nothing but how many weights I am having inside the model.
நான் எந்த அளவுக்கு dataவை கொடுத்து train பண்ணி இருக்கேன்னு அர்த்தம். In other words , CONTEXT அதிகம் .&lt;/li&gt;
&lt;li&gt;Can we run this 120B Paramter in machine ? 
--&amp;gt; Where the OS sits ? C drive or /boot , initially it will be in hard disc , once the machine starts , it will go to RAM Running memory போய் உட்கார்ந்து கொல்லும். So to run the model we need RAM and also the CPU , so these two decides which model to run. Eg., in laptop we can run 7B parameter.&lt;/li&gt;
&lt;li&gt;In local like laptop we can run eg., llama cpp, ollama , LM Studio . இது எல்லாம் modelஆ ? No , these are softwares/tools to run the model.&lt;/li&gt;
&lt;li&gt;Open model are called like " Open weights model ". Eg., chatgpt model , gemini model. ( Referring to Open source )&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Why I Need a model ?&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;LLM is a next word predictor.
Eg., Hi How ......... இதுக்கப்புறம் என்ன வரலாம் like are you , is your life , is the food . இது எல்லாம் ஒரு possibilities ( It can have n no of possibilites ).
MORE THE PRESENCE , MORE POSSIBILITY OF OCCURING.
நீங்க ஒரு வார்த்தையை குடுக்குறீங்க , அதுக்கு அடுத்த வார்த்தை இது கண்டுபிடித்து தர போது . Then this will go as input , like wise it will generate.&lt;/li&gt;
&lt;li&gt;All each possibilities will have SCORE , entire score will like between [ 0 - 100 ] or [ 0 - 1 ] . &lt;/li&gt;
&lt;li&gt;If you are not giving any controlling parameter , then it will chose the highest SCORE.&lt;/li&gt;
&lt;li&gt;If you want to control the LLM , at that place . We have controlling parameters. Namely :&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Temparature &lt;/li&gt;
&lt;li&gt;Top-k&lt;/li&gt;
&lt;li&gt;Top-p&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2jniyf5jquw89jsqng81.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2jniyf5jquw89jsqng81.png" alt=" " width="799" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Temparature&lt;/em&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;0-1&lt;/li&gt;
&lt;li&gt;controls how random or safe the model choices.&lt;/li&gt;
&lt;li&gt;If the TEMP is low like ( 0-0.3 ) then it will ACT BASED ON THE FACTS. Likely having max score / most occuring one.&lt;/li&gt;
&lt;li&gt;If the TEMP is high like ( 0.7 - 1+ ) , model is willing to choice less likely words. Eg., in storing telling or in creating writing. It will choose less likely words from dataset which is trained on.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;Top-k&lt;/em&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Along with temperature its used.&lt;/li&gt;
&lt;li&gt;Model only considers , Top k most items. &lt;/li&gt;
&lt;li&gt;K --&amp;gt; Elements&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;Top-P&lt;/em&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Also its called Sampling methods.&lt;/li&gt;
&lt;li&gt;It will add the score and then it will work.&lt;/li&gt;
&lt;li&gt;Along with temperature its used.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;இப்ப Top - pகு 90 % value  சொல்லிட்டாங்க .  இப்ப அது எப்படி work ஆகும் நா. Each prediction will have a score eg., first prediction  0.70 ,  அடுத்த prediction 0.15 , அடுத்த prediction 0.30 . It will add the prediction score which is equal to 90 % ( more or less ) இத வச்சு தான் அந்த output கொடுக்கும்.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tokens&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;words ?&lt;/li&gt;
&lt;li&gt;which are " Not complete ".&lt;/li&gt;
&lt;li&gt;Entire text into pieces.&lt;/li&gt;
&lt;li&gt;Tokenization ? Process of chopping your text into tokens.&lt;/li&gt;
&lt;li&gt;Each token will be assigned numbers.&lt;/li&gt;
&lt;li&gt;Take it like a translator. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Context Window&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Model ஓட short memory.&lt;/li&gt;
&lt;li&gt;Short term memory.&lt;/li&gt;
&lt;li&gt;Max of tokens a model can see in a given time.&lt;/li&gt;
&lt;li&gt;ஒரு timeல  ஒரு model லால , எவ்வளவு விஷயத்தை பார்க்க முடியும்.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;TBD  :&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;What is dataset ?&lt;/li&gt;
&lt;li&gt;Chunkings ?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Notes :&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;If I am going to use a model , then I need to unzip it , for this i need a running memory so we need RAM. Now , i need process the data , then CPU &amp;amp; GPU ( training a&amp;amp; usage ) are required.&lt;/li&gt;
&lt;li&gt;Weigts will be like FOLATING POINTS or EMBEDDINGS.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://groq.com/" rel="noopener noreferrer"&gt;https://groq.com/&lt;/a&gt; --&amp;gt; Its a tool --&amp;gt; They give free models for usage.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftgg6sw26qlcq68tdifis.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftgg6sw26qlcq68tdifis.png" alt=" " width="800" height="489"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Firmyp6cypfy6rc37se7z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Firmyp6cypfy6rc37se7z.png" alt=" " width="799" height="488"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Fine Tuning is not updating the model or touching the weights. We use like rapper around the model thats called Fine Tunning.&lt;/li&gt;
&lt;li&gt;Markov Chain --&amp;gt; this is used in next word prediction in gmail , word etc .&lt;/li&gt;
&lt;li&gt;Harry Porter and context window .&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Facy2qluqy28ufrcytnvb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Facy2qluqy28ufrcytnvb.png" alt=" " width="799" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmg2f79hl239enr0rboqo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmg2f79hl239enr0rboqo.png" alt=" " width="799" height="321"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>llm</category>
      <category>llmintamil</category>
    </item>
    <item>
      <title>Jenkins - 1</title>
      <dc:creator>technonotes-hacker</dc:creator>
      <pubDate>Sun, 01 Dec 2024 22:02:31 +0000</pubDate>
      <link>https://dev.to/technonotes/jenkins-1-jk6</link>
      <guid>https://dev.to/technonotes/jenkins-1-jk6</guid>
      <description>&lt;ul&gt;
&lt;li&gt;Open source integration tool.&lt;/li&gt;
&lt;li&gt;It can be made as centralised server by integrating multiple source like source code management , build tools , deployment environment . &lt;/li&gt;
&lt;li&gt;Complete INTEGRATION TOOL&lt;/li&gt;
&lt;li&gt;Its Java based.&lt;/li&gt;
&lt;li&gt;To automate the repeated task.&lt;/li&gt;
&lt;li&gt;CI/CD ( continuous integration and continuous delivery )&lt;/li&gt;
&lt;li&gt;Even you can do patching.&lt;/li&gt;
&lt;li&gt;In simple , its a centralised server.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Advantages
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;CI/CD&lt;/li&gt;
&lt;li&gt;Open source&lt;/li&gt;
&lt;li&gt;Community driven&lt;/li&gt;
&lt;li&gt;Browser based&lt;/li&gt;
&lt;li&gt;Supports all Operating system.&lt;/li&gt;
&lt;li&gt;Distributed build --&amp;gt; Master and Slave node , how ? If you are setting up Jenkins , it uses resource of the system where its installed and accordingly the Jobs will take the RAM , CPU and resources. To avoid this "Distributed build" was introduced , so that "Master and Slave node" with that the load will be distributed.&lt;/li&gt;
&lt;li&gt;We can increase the scalability of master and slave.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  CI/CD Workflow
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Commit &lt;/li&gt;
&lt;li&gt;Build&lt;/li&gt;
&lt;li&gt;Test&lt;/li&gt;
&lt;li&gt;Stage&lt;/li&gt;
&lt;li&gt;Deploy&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Stages will be different in other CI/CD process. Purpose will be the same.&lt;/li&gt;
&lt;li&gt;Dedicated branch for each environment it will be a best practice to avoid any confusion here.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Installation &amp;amp; Configuration
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt-get update
java -version
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7d9q0ivb7mgao5a7ww22.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7d9q0ivb7mgao5a7ww22.png" alt="Image description" width="800" height="411"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Add the official key of Jenkins and then the repo.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \
  https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key
echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" \
  https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
  /etc/apt/sources.list.d/jenkins.list &amp;gt; /dev/null
sudo apt-get update
sudo apt-get install jenkins

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftc13bzfichj3vhl6wtt4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftc13bzfichj3vhl6wtt4.png" alt="Image description" width="800" height="422"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2d81tvz930y0mm9d880o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2d81tvz930y0mm9d880o.png" alt="Image description" width="800" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fofbl9zrd499jp88b9i3n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fofbl9zrd499jp88b9i3n.png" alt="Image description" width="800" height="505"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now JENKINS had been installed , please check with command also whether its installed or not.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;dpkg -l | grep -i jenkins

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As we have encountered error , install higher version of Java from 11 to 17 or 21.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhtec0qjjvh80wmezk2e0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhtec0qjjvh80wmezk2e0.png" alt="Image description" width="800" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9ovxkeifel4ser3lb06m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9ovxkeifel4ser3lb06m.png" alt="Image description" width="718" height="94"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F791vxvr969q3b3ha4kx7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F791vxvr969q3b3ha4kx7.png" alt="Image description" width="800" height="213"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg1enlcqtuoiarmkqc9el.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg1enlcqtuoiarmkqc9el.png" alt="Image description" width="800" height="417"&gt;&lt;/a&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 systemctl start jenkins
sudo systemctl enable jenkins
sudo systemctl status jenkins
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Now open the console with the IP of the system.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9gbxx0h3j3an1mtka8ih.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9gbxx0h3j3an1mtka8ih.png" alt="Image description" width="800" height="382"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you want to know the username , then go to below location.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cat /var/lib/jenkins/users/users.xml
/var/lib/jenkins/users/admin_17980521444909415742
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;want to change the password , edit and restart the jenkins.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;hudson.security.HudsonPrivateSecurityRealm_-Details&amp;gt; &amp;lt;passwordHash&amp;gt;#jbcrypt:$2a$10$OTYB2osGPi/rasutjHcYOOhByiCoaEZTEQk52CABOwYdrtxeIPnBu&amp;lt;/passwordHash&amp;gt;&lt;br&gt;
    &amp;lt;/hudson.security.HudsonPrivateSecurityRealm_-Details&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give no password for jenkins user ( as its a internal user )&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5gzpu6mbqzyq2h8lmwdp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5gzpu6mbqzyq2h8lmwdp.png" alt="Image description" width="740" height="634"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Check whether able to get output without sudo password.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbg3my759wgukpswcf7pv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbg3my759wgukpswcf7pv.png" alt="Image description" width="707" height="490"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  User Management &amp;amp; security
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Manage Jenkins &amp;gt; Security &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgndt0z0330rc6x5d7mrq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgndt0z0330rc6x5d7mrq.png" alt="Image description" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Trying to use the OS user for security features , lets try.&lt;/li&gt;
&lt;li&gt;Add the user to the group shadow  like below and restart the Jenkins.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu4hjnxoug18b0uf0krpg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu4hjnxoug18b0uf0krpg.png" alt="Image description" width="700" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdysznma2mqbyhxuy6c6z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdysznma2mqbyhxuy6c6z.png" alt="Image description" width="317" height="516"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now its integrated with the OS user (sathishpy1808) , you can even login with the OS users after integrating.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F854gh15navxcs012zfto.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F854gh15navxcs012zfto.png" alt="Image description" width="800" height="358"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6dj36bm1yjuj6xjexi2t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6dj36bm1yjuj6xjexi2t.png" alt="Image description" width="800" height="185"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Jenkins own database
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;User created in Jenkins only can login , OS users can't.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  User creation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Change to "Jenkins own database" then only you can view the user creation option like below ,&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmjoth3lfkwy0g6ugnpxw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmjoth3lfkwy0g6ugnpxw.png" alt="Image description" width="800" height="352"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6t7gr7unnxkq7n88z69k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6t7gr7unnxkq7n88z69k.png" alt="Image description" width="662" height="722"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyd7hl8k4mqursi3sw0jy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyd7hl8k4mqursi3sw0jy.png" alt="Image description" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the ravi user profile and explore.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fauk48rc51pthi95abtln.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fauk48rc51pthi95abtln.png" alt="Image description" width="700" height="654"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Even you can terminate all sessions from the console.&lt;/li&gt;
&lt;li&gt;You can change the password also and delete option is also available.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Authorisation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;what type of authorisation is given to the users , you can see many options in the below screen.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F320bdkuagb9ecwi9x1zu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F320bdkuagb9ecwi9x1zu.png" alt="Image description" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;BY default --&amp;gt; "logged-in users can do anything" its equal to admin access --&amp;gt; its not advisable.&lt;/li&gt;
&lt;li&gt;Try to use with user based ,&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg2dj3yl46k0r2ynv6aul.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg2dj3yl46k0r2ynv6aul.png" alt="Image description" width="800" height="261"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Also ROLE based plugin it will be useful , lets install ( mostly used plugin for role based authorisation )&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxws0lxe9xr12lej4icxk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxws0lxe9xr12lej4icxk.png" alt="Image description" width="800" height="346"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp93i3wflkjfqxs0d5z2o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp93i3wflkjfqxs0d5z2o.png" alt="Image description" width="800" height="477"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9iwy0g2o7uddc6zsdzmp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9iwy0g2o7uddc6zsdzmp.png" alt="Image description" width="359" height="249"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Manage &amp;amp; roles won't be available at first , it will come after the plugin installation only.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwp9bh8nx4lgfdairmxp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwp9bh8nx4lgfdairmxp.png" alt="Image description" width="800" height="445"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Manage roles and assign roles are very important option.&lt;/li&gt;
&lt;li&gt;Lets create a role and then assign the users.&lt;/li&gt;
&lt;li&gt;Pattern based users are created only in "Item Roles". Here if any user starts with word "Manage" , it should the managing job roles.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frdnmajatn7ushq560of0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frdnmajatn7ushq560of0.png" alt="Image description" width="304" height="76"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwziqaau5di9c6h9h39mj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwziqaau5di9c6h9h39mj.png" alt="Image description" width="800" height="292"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1e2n7elvo5b5m4754uod.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1e2n7elvo5b5m4754uod.png" alt="Image description" width="800" height="275"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create some Jobs to test this user specification.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7nqzuchrqwepqevhs1wb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7nqzuchrqwepqevhs1wb.png" alt="Image description" width="800" height="431"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc4u8tikvvcg7ehft2gj2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc4u8tikvvcg7ehft2gj2.png" alt="Image description" width="800" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg4vukr4kjllnbbv0tggq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg4vukr4kjllnbbv0tggq.png" alt="Image description" width="800" height="445"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Item roles in "Assign Roles" will be useful for pattern description for users.&lt;/li&gt;
&lt;li&gt;You can see all roles which are added.&lt;/li&gt;
&lt;li&gt;All users are added in this console.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft71bdrr62hdkjypuz3s6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft71bdrr62hdkjypuz3s6.png" alt="Image description" width="800" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyno0tfid1hf63gpy0x7k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyno0tfid1hf63gpy0x7k.png" alt="Image description" width="800" height="259"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbemyswpxixajw793r4uu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbemyswpxixajw793r4uu.png" alt="Image description" width="725" height="551"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs585fzbx2o3vfyk6jck3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs585fzbx2o3vfyk6jck3.png" alt="Image description" width="634" height="377"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Job Management
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Jobs needs to be created to perform a task.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxcns9yzf1wedy0i4ds71.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxcns9yzf1wedy0i4ds71.png" alt="Image description" width="492" height="97"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz5l052c5052p8w8bwhkc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz5l052c5052p8w8bwhkc.png" alt="Image description" width="800" height="636"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7is5ifb67rjvc2kb4o62.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7is5ifb67rjvc2kb4o62.png" alt="Image description" width="688" height="88"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh8oytg0omu3wrci3519h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh8oytg0omu3wrci3519h.png" alt="Image description" width="653" height="548"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Build Triggers
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;"Trigger builds remotely (e.g., from scripts)" --&amp;gt; it will trigger once some other task gets triggered.&lt;/li&gt;
&lt;li&gt;"GitHub hook trigger for GITScm polling" --&amp;gt; once the code gets committed then only the job needs to be triggered.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F43ga3rjedmmarzlmsmu9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F43ga3rjedmmarzlmsmu9.png" alt="Image description" width="742" height="432"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Build Environment
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk5wl3qfv423xp4bzbeu5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk5wl3qfv423xp4bzbeu5.png" alt="Image description" width="721" height="372"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Build Steps
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;This is the main step , you can add number of steps here.&lt;/li&gt;
&lt;li&gt;Raw commands , shell script , etc.&lt;/li&gt;
&lt;li&gt;Can be added like stages.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdlopnerh729mp5qhzm32.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdlopnerh729mp5qhzm32.png" alt="Image description" width="360" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Post-build Actions
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj54gvgow4thhdx2vlxp4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj54gvgow4thhdx2vlxp4.png" alt="Image description" width="360" height="534"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Notes
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://www.jenkins.io/doc/book/installing/linux/" rel="noopener noreferrer"&gt;https://www.jenkins.io/doc/book/installing/linux/&lt;/a&gt; --&amp;gt; In this site , you can get the details of the key and the repo details which we have added in the first of the installation part. [TBD]&lt;/li&gt;
&lt;li&gt;What is "openjdk-17-jdk-headless package" ?&lt;/li&gt;
&lt;li&gt;Default port of Jenkins is 8080.&lt;/li&gt;
&lt;li&gt;jenkins user will be always running.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Commands Used
&lt;/h2&gt;

&lt;p&gt;java -version&lt;br&gt;
locate jdk&lt;br&gt;
whereis java&lt;/p&gt;

&lt;h2&gt;
  
  
  List of errors
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Job for jenkins.service failed because the control process exited with error code.
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4xyvh3zgmfo8e2a24iph.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4xyvh3zgmfo8e2a24iph.png" alt="Image description" width="800" height="33"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F53f1e98phsu9hs7egtuw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F53f1e98phsu9hs7egtuw.png" alt="Image description" width="800" height="423"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now you can get the details by typing ,
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;journalctl -xeu jenkins.service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Error clearly says , ( version not supported )&lt;/p&gt;

&lt;p&gt;Dec 01 22:03:57 meet.sathishpy1808.org jenkins[40153]: Running with Java 11 from /usr/lib/jvm/java-11-openjdk-amd64, which is older than the minimum required version (J&amp;gt;&lt;br&gt;
Dec 01 22:03:57 meet.sathishpy1808.org jenkins[40153]: Supported Java versions are: [17, 21]&lt;br&gt;
Dec 01 22:03:57 meet.sathishpy1808.org jenkins[40153]: See &lt;a href="https://jenkins.io/redirect/java-support/" rel="noopener noreferrer"&gt;https://jenkins.io/redirect/java-support/&lt;/a&gt; for more information.&lt;br&gt;
Dec 01 22:03:57 meet.sathishpy1808.org systemd[1]: jenkins.service: Main process exited, code=exited, status=1/FAILURE&lt;/p&gt;

&lt;h3&gt;
  
  
  Access Denied
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foujr7e9xqvqlf49wy30g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foujr7e9xqvqlf49wy30g.png" alt="Image description" width="800" height="423"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;change the ownership to the current user,
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo chown -R sathishpy1808:sathishpy1808 /var/lib/jenkins/
sudo chown $(whoami) /var/lib/jenkins
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Dangling meta character '*' near index 0
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1n6siflcset3obnx2xq5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1n6siflcset3obnx2xq5.png" alt="Image description" width="361" height="473"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
