Thursday, June 12, 2014

Setting up static IP in Ubuntu and autostarting vncserver

$sudo nano /etc/networks/interfaces

Edit this file and change the ip/netmask/gateway and dns as per your network.

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.1.178
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 192.168.1.1

Restart networking service.

$ sudo service networking stop
$ sudo service networking start


Auto starting vnc server - http://askubuntu.com/questions/120973/how-do-i-start-vnc-server-on-boot

  1. First, install the TightVNC server sudo apt-get install tightvncserver.
  2. Set up the VNC server for the user you wish to log in as. When you run "vncserver" for the first time, it will ask you to set a password. only allow SSH tunnelled or VPN connections. To launch programs or a session when your VNC session starts, modify ~/.vnc/xstartup. Here is an example.
    #!/bin/sh
    
    xrdb $HOME/.Xresources
    xsetroot -solid black
    /opt/azureus/azureus &
    k3b &
    icewm-session &
    
  3. Copy the following into /etc/init.d/vncserver. The easiest way to do it is to copy it to your clipboard, run sudo -i && cat > /etc/init.d/vncserver && exit in a terminal, paste it in, and type CTRL-D. Be sure to change the USER variable to whatever user you want the VNC server to run under.
    #!/bin/sh -e
    ### BEGIN INIT INFO
    # Provides:          vncserver
    # Required-Start:    networking
    # Default-Start:     3 4 5
    # Default-Stop:      0 6
    ### END INIT INFO
    
    PATH="$PATH:/usr/X11R6/bin/"
    
    # The Username:Group that will run VNC
    export USER="mythtv"
    #${RUNAS}
    
    # The display that VNC will use
    DISPLAY="1"
    
    # Color depth (between 8 and 32)
    DEPTH="16"
    
    # The Desktop geometry to use.
    #GEOMETRY="x"
    #GEOMETRY="800x600"
    GEOMETRY="1024x768"
    #GEOMETRY="1280x1024"
    
    # The name that the VNC Desktop will have.
    NAME="my-vnc-server"
    
    OPTIONS="-name ${NAME} -depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY}"
    
    . /lib/lsb/init-functions
    
    case "$1" in
    start)
    log_action_begin_msg "Starting vncserver for user '${USER}' on   localhost:${DISPLAY}"
    su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"
    ;;
    
    stop)
    log_action_begin_msg "Stoping vncserver for user '${USER}' on localhost:${DISPLAY}"
    su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY}"
    ;;
    
    restart)
    $0 stop
    $0 start
    ;;
    esac
    
    exit 0
    
  4. Make the script executable with sudo chmod +x /etc/init.d/vncserver.
  5. Finally, connect to your server with a VNC client on port 590X, where X is the value of "DISPLAY" in the vncserver script. On OS X, I like to use Chicken of the VNC. On Windows and Linux, the TightVNC client works nicely.

Wednesday, June 11, 2014

Docker: Container Virtualization

Docker provides so called container virtualization, allowing an application and its dependencies to run as an isolated process inside a virtual environment. This environment is then portable from local computers to backend infrastructure and cloud. Docker uses LinuX Containers (LXC) running in the host OS allowing you to share the resouces available to the host.

Docker started in March 2013, in 15 months it had 8,741 commits from more than 460 contributors. 2.75 millions downloads and 14,000 "Dockerized" apps. Docker is supported by major technology and service providers like Canonical, Fedora, Google Cloud Platform, OpenStack, Rackspace and Red Hat.

Docker today announced the release of version 1.0 of its container virtualization solution.

For a full list of what changed in version 1.0 see the features and fixes commits list.

This post is excerpted from : http://virtualization.info/en/news/2014/06/release-docker-docker-engine-1-0.html
http://readwrite.com/2014/06/10/docker-goes-enterprise#awesm=~oGOZEndiwnkius

Popular micro services patterns

Here are some popular Microservice design patterns that a programmer should know: Service Registry  pattern provides a  central location  fo...