Week of May 29 Detailed Log

docker image rm nginx –force

docker container run –publish 8000:80 –detach nginx:latest

docker container ls -a

docker ps -aq

docker stop $(docker ps -aq)

rm $(docker ps -aq) –force

docker rmi $(docker images -q) –force

docker system prune

docker container logs webhost

docker container top webhost

docker container rm -f 41b 

docker run –name mongo -d mongo

docker top mongo

ps aux

docker stop mongo

docker ps

docker top mongo

docker start mongo

docker container run -d -p 3306:3306 –name db -e MYSQL_RANDOM_ROOT_PASSWORD=yes mysql

docker container logs db

GENERATED ROOT PASSWORD: yi0xe8fohPhaboiF9cicaidoow4yaCie

docker container run -d –name webserver -p 8080:80 httpd

docker ps

docker container run -d –name proxy -p 8000:80 nginx

docker container ls -a

docker stop dacbe46dd93d 623768eb2e8b 476615d3fe3e 72259e479419

docker ps -a

docker container rm dacbe46dd93d 623768eb2e8b 476615d3fe3e 72259e47941

docker image ls

docker container run -d –name nginx -p 8000:80 nginx

docker container run -d –name mysql -e MYSQL_RANDOM_ROOT_PASSWORD=true mysql

docker container ls

# List processes running in container

docker container top mysql

docker container top nginx

#details of one container config

docker container inspect mysql

# performance stats for all containers

docker container stats

docker container run -it –name proxy nginx bash

ls -al

Exit

docker container ls -a

# Start new container Interactively 

docker container run -it –name ubuntu ubuntu

apt-get update

apt-get install -y curl

curl google.com

exit

docker container start -ai ubuntu

# Run additional command in existing container

docker container exec -it mysql bash

exit

#Image is still running

docker pull alpine

docker image ls

docker container run -p 80:80 –name webhost -d nginx

docker container port webhost

80/tcp -> 0.0.0.0:80

docker container inspect –format ‘{{ .NetworkSettings.IPAddress }}’ webhost

172.17.0.4

# Show Network 

docker network ls

NETWORK ID          NAME                DRIVER              SCOPE

b5fc5fd2d6d5        bridge              bridge              local

613749eac668        host                host                local

2f8551c3a295        none                null                local

docker network inspect bridge

docker network create my_app_net

docker network ls

docker container run -d –name new_nginx –network my_app_net nginx

docker network inspect my_app_net

# Add another container on custom Network

docker network connect deb100b57c4d 900ecc0f5b4c

docker network inspect my_app_net

docker network disconnect deb100b57c4d 900ecc0f5b4c

docker container run -d –name my_nginx –network my_app_net nginx

docker inspect deb100b57c4d 

[

#Testing DNS Resolution

#Preq

#docker container exec -it my_nginx bash

#apt update

#apt install iputils-ping

#exit

docker container exec -it my_nginx ping new_nginx

# Reverse Scenario

#Preq

#docker container exec -it my_nginx bash

#apt update

#apt install iputils-ping

#exit

docker container exec -it my_nginx ping new_nginx

# CLI Testing

Terminal Window #1

$ docker container run –rm -it centos:7 bash

yum update curl

curl –version

Terminal Window #2

docker ps -a

docker container run –rm -it ubuntu:14.04 bash

apt-get update && apt-get install -y curl

 curl –version   

# DNS Round Robin Testing

# Create a Network

$ docker network create dude

docker container run -d –net dude –net-alias search elasticsearch:2

docker container ls

docker container run –rm –net alpine nslookup search

# Elastic Search Container 1

#PRE

docker container exec -it d7f343e6e0e2 bash

apt update

apt install dnsutils

Exit

# Elastic Search Container 2

docker container exec -it 37d385dd9bb5 bash

apt update

apt install dnsutils

exit

docker container run –rm –net dude centos curl -s search:9200

docker container run –rm –net dude centos curl -s search:9200

{

  “name” : “Sangre”,

  “cluster_name” : “elasticsearch”,

  “cluster_uuid” : “1kbpTYo-TZSLS35CPkR25Q”,

  “version” : {

    “number” : “2.4.6”,

    “build_hash” : “5376dca9f70f3abef96a77f4bb22720ace8240fd”,

    “build_timestamp” : “2017-07-18T12:17:44Z”,

    “build_snapshot” : false,

    “lucene_version” : “5.5.4”

  },

  “tagline” : “You Know, for Search”

}

docker container run –rm –net dude centos curl -s search:9200

{

  “name” : “Firearm”,

  “cluster_name” : “elasticsearch”,

  “cluster_uuid” : “ES9_lTNoQ2Kp9ykTkr2_-g”,

  “version” : {

    “number” : “2.4.6”,

    “build_hash” : “5376dca9f70f3abef96a77f4bb22720ace8240fd”,

    “build_timestamp” : “2017-07-18T12:17:44Z”,

    “build_snapshot” : false,

    “lucene_version” : “5.5.4”

  },

  “tagline” : “You Know, for Search”

docker container ls

#Cleanup

docker container rm -f boring_allen youthful_jackson

boring_allen

youthful_jackson

docker image ls

# Images and Their Layers:Discover the Image Cache

docker pull nginx:1.18.0-alpine

docker image ls

docker history nginx:latest

#Image Tagging and Pushing to Docker Hub

docker Hubdocker pull mysql/mysql-server

docker pull nginx:mainline

docker image tag nginx ms4446/nginx

docker image push ms4446/nginx

docker login

cat .docker/config.json

# Push repository

docker image push ms4446/nginx:testing

docker image tag ms4446/nginx ms4446/nginx:testing

docker image push ms4446/nginx:testing

# Building Images: Running Docker Builds

docker image build -t customnginx .

nano Dockerfile

FROM node:6-alpine

EXPOSE 3000

RUN apk add –update tini

RUN mdkdir -p /usr/src/app

WORKDIR /usr/src/app

COPY package.json package.json

RUN npm install && npm cache clean

COPY . .

CMD [ “tini”, “–“,”node”, “./bin/www”]

docker build -t testnode .

# Run New Docker Build

docker container run –rm -p 88:3000 testnode

#Create Tag and Push to Dockerhub

docker images

docker tag testnode ms4446/testing-node

docker push ms4446/testing-node

#Delete local Custom Image

docker image rm ms4446/testing-node

#Download Custom Image and run

docker container run –rm -p88:3000 ms4446/testing-node

# Persistent Data: Data Volumes

#Clean up

docker system prune -a

docker ps -aq

docker stop $(docker ps -aq)

docker images -a

docker rmi 30f937e841c8 9beeba249f3e -f

docker volume prune

docker rm 900ecc0f5b4c8e86f67f13fe6062e1730da168c6feb3028f8c589a7b93d63c95 -f

# Pull mysql from repo

docker pull mysql

docker image inspect mysql

docker container run -d –name mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=True mysql

docker container ls

docker container inspect mysql

docker volume ls

docker volume inspect fb395bf87187c8e3eefe7e7e16faf5ec5b7c10b479d679232d2fc02619ddcea2

docker container run -d –name mysql2 -e MYSQL_ALLOW_EMPTY_PASSWORD=True mysql

docker volume ls

docker container stop mysql

docker container stop mysql2

docker container ls

docker container ls -a

docker volume ls

docker container rm mysql mysql2

docker volume ls

#named volumes

docker container run -d –name mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=True -v mysql-db:/var/lib/mysql mysql

docker volume ls

docker volume inspect mysql-db

docker container rm -f mysqlmysql

docker container run -d –name mysql3 -e MYSQL_ALLOW_EMPTY_PASSWORD=True -v mysql-db:/var/lib/mysql mysql

docker volume ls

#Bind Mappings

docker container run -d –name nginx -p 81:80 -v $(pwd):/usr/share/nginx/html nginx

docker container run -d –name nginx2 -p 82:80 -v $(pwd):/usr/share/nginx/html nginx

ll

touch testme.txt

ls -al

echo “is it me you’re looking for?” >testme.txt

#From Second Command line Window

docker container exec -it nginx bash

cd /usr/share/nginx/html

ls -al

#Database Upgrades with Named Volumes

docker container run -d –name psql -v psql:/var/lib/postgresql/data postgres:9.6.1

docker container logs -f psql

docker container ls

docker container stop 9a5a40be80ff

docker container run -d –name psql2 -v psql:/var/lib/postgresql/data postgres:9.6.2

docker container ps -a

docker volume ls

docker container logs -f fac039e1cb84

#Edit code Running In Containers With Bind Mounts

docker pull bretfisher/jekyll-serve

docker run 80:4000 -v $(pwd):/site bretfisher/jekyll-serve

One comment

  1. Pingback: Week of May 29nd | SQL Squirrels

Leave a Reply