Swetha – Docker Lab Assignment

DevOps

MOTOSHARE 🚗🏍️
Turning Idle Vehicles into Shared Rides & Earnings

From Idle to Income. From Parked to Purpose.
Earn by Sharing, Ride by Renting.
Where Owners Earn, Riders Move.
Owners Earn. Riders Move. Motoshare Connects.

With Motoshare, every parked vehicle finds a purpose. Owners earn. Renters ride.
🚀 Everyone wins.

Start Your Journey with Motoshare

Install Docker Engine in Centos#1 Vm.

[centos@ip-172-31-7-48 ~]$ sudo systemctl start docker
[centos@ip-172-31-7-48 ~]$ history
    1  sudo -s
    2  exit
    3  clear
    4  ls
    5  sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    6   sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    7   sudo yum install –y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    8   sudo yum-config-manager --enable rhui-REGION-rhel-server-extras
    9   sudo yum install -y docker-ce
   10  docker -v
   11  sudo systemctl enable docker
   12  sudo systemctl start docker
   13  history
Code language: PHP (php)

Verify docker installation

[centos@ip-172-31-7-48 ~]$ which docker
/usr/bin/docker
[centos@ip-172-31-7-48 ~]$ which dockerd
/usr/bin/dockerd
[centos@ip-172-31-7-48 ~]$ which containerd
/usr/bin/containerd
[centos@ip-172-31-7-48 ~]$ ps -eaf|grep dockerd
root     10764     1  0 05:16 ?        00:00:00 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
centos   10920  1458  0 05:26 pts/0    00:00:00 grep --color=auto dockerd
[centos@ip-172-31-7-48 ~]$ ps -eaf|grep containerd
root     10753     1  0 05:16 ?        00:00:00 /usr/bin/containerd
root     10764     1  0 05:16 ?        00:00:00 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
centos   10922  1458  0 05:26 pts/0    00:00:00 grep --color=auto containerd
[centos@ip-172-31-7-48 ~]$ docker -v
Docker version 20.10.7, build f0df350
[centos@ip-172-31-7-48 ~]$
Code language: JavaScript (javascript)

Assignment#1

Create Ubuntu Container

[centos@ip-172-31-7-48 ~]$ sudo -s
[root@ip-172-31-7-48 centos]# docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
a31c7b29f4ad: Pull complete
Digest: sha256:b3e2e47d016c08b3396b5ebe06ab0b711c34e7f37b98c9d37abe794b71cea0a2
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

[root@ip-172-31-7-48 centos]# docker run -itd ubuntu
49a0ac7cce4a06ca475f26e8e8c27a4b564346cff412e22c394308d7a5397d74
[root@ip-172-31-7-48 centos]# docker ps -a
CONTAINER ID   IMAGE     COMMAND   CREATED         STATUS         PORTS     NAMES
49a0ac7cce4a   ubuntu    "bash"    6 seconds ago   Up 5 seconds             loving_goldwasser

Code language: PHP (php)

Attaching to the container and Install Update, git & apache2 in ubuntu container

[root@ip-172-31-7-48 centos]# docker attach 49a0ac7cce4a
root@49a0ac7cce4a:/# yum install git
bash: yum: command not found
root@49a0ac7cce4a:/# apt-get update
root@49a0ac7cce4a:/# apt-get install apache2
root@49a0ac7cce4a:/# git --version
git version 2.25.1

Code language: PHP (php)

Run git command in container from outside

ctrl+p+q - to come out from container
[root@ip-172-31-7-48 centos]# docker exec 49a0ac7cce4a git --version
git version 2.25.1Code language: CSS (css)

Assignment#2

Create a httpd container exposed at 8080 port

[root@ip-172-31-7-48 centos]# docker pull httpd
Using default tag: latest
latest: Pulling from library/httpd
Status: Downloaded newer image for httpd:latest
docker.io/library/httpd:latest
[root@ip-172-31-7-48 centos]# docker container run --name web -d -p 8080:80 httpd
3ec7d0b852ee41f4f1fe30ee075b79bdfadf9c4090adcd6945d2411ac5b771c2
[root@ip-172-31-7-48 centos]# docker ps -a
CONTAINER ID   IMAGE     COMMAND              CREATED         STATUS         PORTS                                   NAMES
3ec7d0b852ee   httpd     "httpd-foreground"   6 seconds ago   Up 5 seconds   0.0.0.0:8080->80/tcp, :::8080->80/tcp   web
Code language: PHP (php)

Access(curl) container from node

[root@ip-172-31-7-48 centos]# curl localhost:8080
<html><body><h1>It works!</h1></body></html>
[root@ip-172-31-7-48 centos]# curl localhost:8081
curl: (7) Failed connect to localhost:8081; Connection refused
[root@ip-172-31-7-48 centos]# curl localhost:8080
<html><body><h1>It works!</h1></body></html>

Code language: HTML, XML (xml)

Assignment#3

Create an image with base – centos and git must be installed in it

[root@ip-172-31-7-48 centos]# touch dockerfile
[root@ip-172-31-7-48 centos]# vi dockerfile
[root@ip-172-31-7-48 centos]# cat dockerfile
FROM ubuntu
MAINTAINER Swetha
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update
RUN apt-get -y install tzdata
RUN apt-get update && apt-get install git -y && apt-get install -yq apache2
CMD /usr/sbin/apache2ctl -D FOREGROUND

[root@ip-172-31-7-48 centos]# docker build -t ub-up-git .
[root@ip-172-31-7-48 centos]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
ub-up-git    latest    c226f4a2cae2   7 minutes ago   259MB
ubuntu       latest    c29284518f49   7 days ago      72.8MBCode language: PHP (php)

Push a docker image to hub.docker.com

[root@ip-172-31-7-48 centos]# docker tag ub-up-git swetha97/test21
[root@ip-172-31-7-48 centos]# docker images
REPOSITORY                TAG       IMAGE ID       CREATED          SIZE
swetha97/test21           latest    c226f4a2cae2   16 minutes ago   259MB
ub-up-git-by-dockerfile   latest    c226f4a2cae2   16 minutes ago   259MB
ub-up-git                 latest    c226f4a2cae2   16 minutes ago   259MB
ubuntu                    latest    c29284518f49   7 days ago       72.8MB

[root@ip-172-31-7-48 centos]# docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: swetha97
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
[root@ip-172-31-7-48 centos]# docker push swetha97/test21
Code language: PHP (php)

https://hub.docker.com/r/swetha97/test21/tags?page=1&ordering=last_updated