Command examples interface

Command examples

The syntax is pretty simple:
ip route add {NETWORK/MASK} via {GATEWAYIP}
ip route add {NETWORK/MASK} dev {DEVICE}
ip route add default {NETWORK/MASK} dev {DEVICE}
ip route add default {NETWORK/MASK} via {GATEWAYIP}

Add a static route on Linux

You must login as root user with the help of su command or sudo command:
$ su -
OR
$ sudo -i
Once become a root user, setup a temporary route using the ip command:
# ip route add 172.10.1.0/24 via 10.0.0.100 dev eth0
Verify it:
# ip r
Here is another example where I am setting up route for my VPN gateway:
# ip link set dev tun0 up mtu 1500
# ip addr add dev tun0 10.8.0.2/24 broadcast 10.8.0.255
# ip route add 139.59.2.125/32 via 192.168.2.254
# ip route add 0.0.0.0/1 via 10.8.0.1
# ip route add 128.0.0.0/1 via 10.8.0.1

Again view route with the ip command:
# ip r
Linux ip route add network command examples

Warning: Do not stop networking service over ssh session.

How to add a permanent static route using ip command on Linux

Edit config file such as /etc/sysconfig/network-scripts/route-eth0 on a CentOS/RHEL/Fedora Linux for interface eth0 using a text editor such as nano command or vim command:
# vim /etc/sysconfig/network-scripts/route-eth0
Append the following text:
172.10.1.0/24 via 10.0.0.100 dev eth0
Save and exit (close) the file in a vim text editor. Finally, restart your network service on a CentOS/RHEL/Fedora Linux so they take effect:
# systemctl restart network.service


Restarting network service on a CentOS/RHEL/Fedora Linux

Test new routing with the help of ping command or ip command:
# ping 172.10.1.10
# ip r

For more info see:

A note about ip command and persistence static routing on a Debian/Ubuntu

Edit your /etc/network/interfaces file for say eth0:
# vi /etc/network/interfaces
Update it as follows:

auto eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.254
## static ip config START ##
up /sbin/ip route add 172.10.1.0/24 via 10.8.0.1 dev eth0
down /sbin/ip route delete 172.10.1.0/24 via 10.8.0.1 dev eth0
## static ip config END ##

Restart networking service when using a Debian or Ubuntu Linux
# systemctl restart networking


DOCKER những thùng hàng tương lai #1


 DOCKER

 



1. Docker là gì?

Docker là một giải pháp ảo hóa mã nguồn mở, ban đầu viết bằng Python, sau đó viết bằng Go-Lang. Docker có thể đóng gói và chạy chương trình của mình trên các môi trường khác nhau (lilux, windows …) một cách nhanh nhất dưới dạng Container gọn nhẹ.

 


Người sáng lập Docker, Solomon Hykes

Docker hiện được Amazon, Google, IBM, Microsoft và VMware hỗ trợ

 

2.     Docker khác gì so với máy ảo

Docker đưa ra một giải pháp mới cho vấn đề ảo hóa, thay vì tạo ra các máy ảo con chạy độc lập kiểu “Tạo phần cứng ảo và cài HĐH lên đó”, có thể đóng thành các Container riêng lẻ, các container này sử dụng chung tài nguyên của máy mẹ, do đó hoạt động nhẹ và nhanh hơn các máy ảo dạng “Tạo phần cứng ảo và cài HĐH lên đó”


 

3.     Các thành phần của Docker 3.1 Docker Engine: dùng để tạo và chạy các “container” < Container là 1 đối tượng mà ứng dụng chạy trong đó. Container được tạo từ image >

Với Docker Engine, chứa các image là các chương trình đã được đóng gói. Các image này có thể lấy từ thư viện Docker hub hoặc người dùng tự đẩy image vào

        3.2 Kitematic: là giao diện GUI cho Docker


  

        3.3 Docker hub: là 1 dịch vụ host public của Docker để quản lý các images  <

Image là các chương trình đã được đóng gói> -  là nơi để mọi người upload, chia sẽ các images Docker của mình

https://hub.docker.com/explore/


 

Sau khi tìm ra image rồi, chúng ta tiến hành download nó về, bước này gọi là Pull

Docker pull mongo

Docker pull centos:centos6

Docker pull luongnv/admnvluong

Luongnv: tên tác giả

Admnvluong: tên file image


 


 

        3.4 Docker Compose: là 1 công cụ để tạo và chạy nhiều containers cùng 1 lúc.

Với Docker Compose, chỉ cần định nghĩa các containers lên 1 file (text)

<Dockerfile> < Dockerfile định nghĩa 1 image sẽ được tạo như thế nào, gồm các ứng dụng nào được cài sẵn bên trong đó>

Để tạo một image chúng ta sẽ tạo một Dockerfile rồi sau đó chạy Dockerfile đó để create image

Dockerfile cơ bản bao gồm có :

        FROM: Chỉ ra image được build từ đâu (từ image gốc nào)

Ví dụ: FROM ubuntu hoặc có thể chỉ rõ tag của image gốc 'FROM ubuntu:12.04'

        RUN: Dùng để chạy một lệnh nào đó khi build image

        COMMAND: Các câu lệnh chạy trong image


 

[ Ở Dockerfile trên là các câu lệnh để download và cài đặt mongodb ].

Sau khi tạo xong Dockerfile thì chạy lệnh sau để tạo image

 

sudo docker build -t linuxhjkaru/ubuntu_with_mongo:v1 .

        3.5 Docker Trusted Registry (Docker Registry) :là dịch vụ cung cấp private image


 

4.     Các câu lệnh trong Docker

        Cài đặt Docker


rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epelrelease-6-8.noarch.rpm  yum -y install docker-io 

 

sudo yum install epel-release  sudo yum install -y python-pip 


sudo pip install docker-composetall docker-composer  service docker start  chkconfig docker on

        Lệnh vận hành dịch vụ docker --version -> xem version của docker docker -v -> xem version docker service docker status -> xem trạng thái docker service docker start| stop -> start| stop docker

        Pull một image từ Docker Hub docker pull <image name> docker load < telehub.1.5.tar docker commit -m "Name" ID hoasao/telehub:1.5

        Tạo một container từ image có sẵn

docker run -v <thư mục trên máy tính>:<thư mục trong container> -

it <image name> /bin/bash

 

docker run -v /abc:/abc -p 80:80 -it ubuntu /bin/bash

docker run --net=host --privileged  --name="telehub" -dti

hoasao/telehub:1.5

 

        Liệt kê các images hiện có docker images

        Liệt kê các container đang chạy docker ps

        Liệt kê toàn bộ các container đang chạy và đã tắt docker ps -a

        Khởi động và truy cập lại vào một container đã tắt

docker start <ID hoặc NAME> docker attach ID  OR

docker exec -it <ID hoặc NAME> /bin/bash

        Tắt một container

docker stop <ID hoặc NAME>

 

        Xoá một container docker rm <ID hoặc NAME> docker rm -f <ID hoặc NAME>

        Xoá một image docker rmi <ID hoặc NAME> docker rmi -f <ID hoặc NAME>

        Đóng gói container thành file .tar

docker save hoasao/telehub:1.5 > telehub.1.5.tar