Docker: Difference between revisions
m (→NGINX: auto restart) |
m (Protected "Docker" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Delete=Allow only administrators] (indefinite))) |
||
(No difference)
|
Revision as of 19:17, 24 November 2016
Installation
Source: linuxconfig.org
sudo apt-get update sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D sudo apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main' sudo apt-get update
It should download from repository:
apt-cache policy docker-engine sudo apt-get install -y docker-engine sudo systemctl status docker sudo usermod -aG docker $(whoami) sudo usermod -aG docker aman docker docker info
Testing Docker
docker run hello-world docker search ubuntu
Removing Images
Find out the Image ID:
docker images
Delete the Image:
docker rmi -f d9790ed1a768
To view all containers — active and inactive:
docker ps -a
Stopping a running or active container:
docker stop <container-id>
Removing a Container:
docker rm <container-id>
Installing MediaWiki
docker search mediawiki docker run -d --name=mediawiki -p 80:80 linuxconfig/mediawiki docker ps
Running same container again on next reboot
docker start mediawiki
- Databases Credentials
Use the following command to update or reset MariaDB user password. The below command will set a new admin user password:
docker exec -it mediawiki mysqladmin -uadmin -ppass password abc123
To create a new database eg. mediawiki2 enter:
docker exec -it mediawiki mysqladmin -uadmin -ppass create mediawiki2
NGINX
Source: digitalocean.com
Create nginx root directory:
mkdir -p ~/docker-nginx/html cd ~/docker-nginx/html nano index.html
Paste below contents into this file
<html> <body style="background-color:green"> <head> <title>Green Site - Docker </title> </head> <body> <div class="container"> <h1> GREEN WEBSITE</h1> <p> This is GREEN Website.</p> <p> Its color is also GREEN.</p> </div> </body> </html>
Install nginx image for docker
docker search nginx
Run nginx docker image with auto Restart on reboot option
docker run --name nginx -p 80:80 -d -v ~/docker-nginx/html:/usr/share/nginx/html --restart unless-stopped nginx
Docker currently has four restart policies[1]:
no on-failure unless-stopped always
- Multiple Instances
Create copies of root directory for different servers:
cp -r ~/docker-nginx/ ~/docker-nginx8080/ cp -r ~/docker-nginx/ ~/docker-nginx8081/ cp -r ~/docker-nginx/ ~/docker-nginx8082/ cp -r ~/docker-nginx/ ~/docker-nginx8083/
Edit the Index.html file to reflect different content by editing the html code.
Start different instances of nginx to start with different ports & root directories:
docker run --name nginx8080 -p 8080:80 -d -v ~/docker-nginx8080/html:/usr/share/nginx/html nginx docker run --name nginx8081 -p 8081:80 -d -v ~/docker-nginx8081/html:/usr/share/nginx/html nginx docker run --name nginx8082 -p 8082:80 -d -v ~/docker-nginx8082/html:/usr/share/nginx/html nginx docker run --name nginx8083 -p 8083:80 -d -v ~/docker-nginx8083/html:/usr/share/nginx/html nginx
Nginx instances should now be available using below links:
http://<IP_of_Server>:8080 http://<IP_of_Server>:8081 http://<IP_of_Server>:8082 http://<IP_of_Server>:8083
RancherOS
Source: rancher.com
Create a VM with atleast 1.5 GB RAM Boot the following ISO file:
https://releases.rancher.com/os/latest/rancheros.iso
Perform basic networking using below commands:
sudo ifconfig eth0 inet 10.10.10.10 netmask 255.255.255.0 broadcast 10.10.10.255 sudo route add default gw 10.10.10.1
sudo vi /etc/resolv.conf nameserver 10.10.10.5
Check Internet connectivity
ping google.com
Install RancherOS
sudo ros install -d /dev/xvda
Set the persistent networking:
sudo vi /etc/networking/interfaces
Install Linux-dash, a minimal low-overhead web dashboard for monitoring Linux servers
sudo system-docker run -d --net=host --name busydash husseingalal/busydash http://<IP_OF_MACHINE>
- References
{{#widget:DISQUS
|id=networkm
|uniqid=Docker
|url=https://aman.awiki.org/wiki/Docker
}}