Docker Tutorial for Beginners
8 Basic Docker Commands || Docker Tutorial 4
- 2:25 docker pull
- 4:04 docker run
- 4:40 docker ps
- 5:06 docker run --options
- 6:17 docker stop
- 6:43 docker start
- 10:08 - docker ports, docker port mapping
- docker logs (in part 2)
- docker exec -it (in part 2)
Debugging Docker Containers with docker exec and docker logs || Docker Tutorial 5
- 1:56 docker logs
- 5:28 docker exec -it
Docker vs Virtual Machine | simply explained || Docker Tutorial 6
Overview of Workflow with Docker - Docker in Practice || Docker Tutorial 7
Developing with Docker - Docker in Practice || Docker Tutorial 8
0:14 - Pre-Requisites
0:55 - what we will do in this video
1:44 - 1st part: The JavaScript App (HTML, JavaScript Frontend, Node.js Backend)
https://gitlab.com/nanuchi/techworld-js-docker-demo-app
3:30 - 2nd part: MongoDB and Mongo Express Set-Up with Docker
5:00 - Docker Network concept and demo (docker-compose uses docker network under the hood, in the next video(s) I will show you how to do it with docker-compose)
15:33 - 3rd part: Connect Node Server with MongoDB container
0:07 - What is Docker Compose?
1:22 - docker run commands VS docker compose
5:05 - How to use it? - Create the Docker Compose File (Demo)
7:25 - Docker Networking in Docker Compose
1:49 - What is a Dockerfile?
2:22 - How the Dockerfile commands map to the image environment
8:05 - Create the Dockerfile (Demo)
12:00 - Build an image out of the Dockerfile
15:02 - Start the Application to verify: 1) App starts successfully 2) App environment is configured correctly
19:34 - do improvement - copy only relevant files
0:21 - When do we need Docker Volumes?
1:02 - What is Docker Volumes?
2:04 - 3 Docker Volumes Types
4:14 - Docker Volumes in docker-compose file
0:23 - no persistance - docker compose without volumes
2:16 - Define the named volume in docker compose file
5:22 - re-start docker compose and see how data is persisted
6:34 - see where the docker volumes are located on your local machine
0:38 - Comparison Docker and Kubernetes
1:40 - Docker and Kubernetes in the software development process
2:42 - Kubernetes in Detail
3:21 - Differences of Kubernetes and Docker Swarm
0:34 - BP 1: Use official and verified Docker Images as Base Image
1:13 - BP 2: Use Specific Docker Image Versions
2:12 - BP 3: Use Small-Sized Official Images
(FROM node:1.2.3-alpine)
4:35 - BP 4: Optimize Caching Image Layers
10:09- BP 5: Use .dockerignore file
10:55 - BP 6: Make use of Multi-Stage Builds
14:15 - BP 7: Use the Least Privileged User
16:06 - BP 8: Scan your Images for Security Vulnerabilities
17:50 - Wrap Up
=================================
https://www.youtube.com/watch?v=80Ew_fsV4rM
Ingress, tls certificate
https://www.youtube.com/watch?v=5cNrTU6o3Fw
multiple containers in a pod, yaml example
https://www.youtube.com/watch?v=6YisG2GcXaw&list=PLy7NrYWoggjwPggqtFsI_zMAwvG0SqYCb&index=8
Mongo + NodeJS
stream the logs: docker -f
https://www.youtube.com/watch?v=WmcdMiyqfZs&list=PLy7NrYWoggjwPggqtFsI_zMAwvG0SqYCb&index=10
Dockerfile
docker ps -a
docker stop <containerid>
docker rm <containerid>
docker images
docker rmi <imageid>
docker build -t tagname:version .
docker images
docker run tagname:version
docker logs <containerid> -f
docker exec -it <containerid> /bin/sh
env (lists all env vars)
https://www.youtube.com/watch?v=vWSRWpOPHws&list=PLy7NrYWoggjwPggqtFsI_zMAwvG0SqYCb&index=11
AWS ECR - Elastic Container Registry
https://www.youtube.com/watch?v=p2PH_YPCsis&list=PLy7NrYWoggjwPggqtFsI_zMAwvG0SqYCb&index=13
Docker volumes
host volume:
docker run -v /home/mount/data:/var/lib/mysql/data
anonymous vokume:
docker run -v /var/lib/mysql/data
named volumes:
docker run -v name:/var/lib/mysql/data
https://www.youtube.com/watch?v=SBUCYJgg4Mk&list=PLy7NrYWoggjwPggqtFsI_zMAwvG0SqYCb&index=14
volumes demo
https://youtu.be/SBUCYJgg4Mk?list=PLy7NrYWoggjwPggqtFsI_zMAwvG0SqYCb&t=291
mongo, mysql, postgresql