Skip to main content

Docker Internals : Demistifying Container

PID namespaces :
  • Every running process sees only a limited set of resources. This limited resource set is identified by notion of namespace.
  • In linux kernel for PID namespaces to be enabled CONFIG_PID_NS has to be made true.
Network namespaces
  • Network support at operating system level contains network interface and routing table entries.There resources are typicall shared across entire OS.
  • This typical behaviout can be altered by notion of Network Namespaces. With particular namespce we can isolate acess to network interface and routing table created hitherto.
IPC namespace
  • Message queues, shared memory or socket communication can all be isolated with IPC namespce support provided by operating system

MNT namespace :
  • Mount is a process abstration which enables access to storage devices.Notion of mount space enables OS to have isolated filesystems accessible to process that are executing.

UTS namespace
  • UTS stands for UNIX Timesharing Sytem. It's an idea where at different instances in time we seem to have a different computing machine presented, in software front.
  • Within a UTS namespace we have different hostname. 

With PID,NET,IPC,MNT and UTS namespaces we can create an virutal environments within a single operating system. Such environments are called "CONTAINERS". 

Comments

Popular posts from this blog

ASCII to Decimal conversion

#include "msp430.h"                     ; #define controlled include file         NAME    main                    ; module name         PUBLIC  main                    ; make the main label vissible                                         ; outside this module         ORG     0FFFEh         DC16    init                    ; set reset vector to 'init' label         RSEG    CSTACK                  ; pre-declaration of segment         RSEG    CODE      ...

Create One-Click Shutdown and Reboot Shortcuts

First, create a shortcut on your desktop by right-clicking on the desktop, choosing New, and then choosing Shortcut. The Create Shortcut Wizard appears. In the box asking for the location of the shortcut, type shutdown. After you create the shortcut, double-clicking on it will shut down your PC. But you can do much more with a shutdown shortcut than merely shut down your PC. You can add any combination of several switches to do extra duty, like this: shutdown -r -t 01 -c "Rebooting your PC" Double-clicking on that shortcut will reboot your PC after a one-second delay and display the message "Rebooting your PC." The shutdown command includes a variety of switches you can use to customize it. Table 1-3 lists all of them and describes their use. I use this technique to create two shutdown shortcuts on my desktop—one for turning off my PC, and one for rebooting. Here are the ones I use: shutdown -s -t 03 -c "Bye Bye m8!" shutdown -r -t 03 -c ...

Event Sourcing with CQRS.

  The way event sourcing works with CQRS is to have  part of the application that models updates as writes to an event log or Kafka topic . This is paired with an event handler that subscribes to the Kafka topic, transforms the event (as required) and writes the materialized view to a read store.