Full Docker Tutorial | Complete Docker Course | Hands-on course with a lot of demos and explaining the concepts behind, so that you really understand it.
💙 Become a Kubernetes Administrator – CKA: https://bit.ly/3lUeDES
💚 Become a DevOps Engineer – full educational program: https://bit.ly/3gEwf4V
🧡 Udemy courses: http://bit.ly/3nIouPW
► Follow me on IG for behind the scenes content: 👉🏼 https://bit.ly/2F3LXYJ
#docker #dockertutorial #techworldwithnana
By the end, you will have a deep understanding of the concepts and a great overall big picture of how Docker is used in the whole software development process.
The course is a mix of animated theoretic explanation and hands-on demo’s to follow along, so you get your first hands-on experience with Docker and feel more confident using it in your project.
▬▬▬▬▬▬ T I M E S T A M P S ⏰ ▬▬▬▬▬▬
0:00 – Intro and Course Overview
01:58 – What is Docker?
10:56 – What is a Container?
19:40 – Docker vs Virtual Machine
23:53 – Docker Installation
42:02 – Main Docker Commands
57:15 – Debugging a Container
1:06:39 – Demo Project Overview – Docker in Practice
1:10:08 – Developing with Containers
1:29:49 – Docker Compose – Running multiple services
1:42:02 – Dockerfile – Building our own Docker Image
2:04:36 – Private Docker Repository – Pushing our built Docker Image into a private Registry on AWS
2:19:06 – Deploy our containerized app
2:27:26 – Docker Volumes – Persist data in Docker
2:33:03 – Volumes Demo – Configure persistence for our demo project
2:45:13 – Wrap Up
🔗 Links
► Developing with Containers – Demo project: https://gitlab.com/nanuchi/techworld-js-docker-demo-app
🚀 1. What is Docker?
► What is a container and what problems does it solve?
► Container repository – where do containers live?
🚀 2. What is a Container technically
► What is a container technically? (layers of images)
► Demo part (docker hub and run a docker container locally)
🚀 3. Docker vs Virtual Machine
🚀 4. Docker Installation
► Before Installing Docker – prerequisites
► Install docker on Mac, Windows, Linux
❗️ Note: Docker Toolbox has been deprecated. Please use Docker Desktop instead. See for Mac (https://docs.docker.com/docker-for-mac/) and for Windows (https://docs.docker.com/docker-for-windows/).
🚀 5. Main Docker Commands
► docker pull, docker run, docker ps, docker stop, docker start, port mapping
🚀 6. Debugging a Container
► docker logs, docker exec -it
🚀 7. Demo Project Overview – Docker in Practice (Nodejs App with MongoDB and MongoExpress UI)
🚀 8. Developing with Containers
► JavaScript App (HTML, JavaScript Frontend, Node.js Backend)
► MongoDB and Mongo Express Set-Up with Docker
► Docker Network concept and demo
🚀 9. Docker Compose – Running multiple services
► What is Docker Compose?
► How to use it – Create the Docker Compose File
► Docker Networking in Docker Compose
🚀 10. Dockerfile – Building our own Docker Image
► What is a Dockerfile?
► Create the Dockerfile
► Build an image with Dockerfile
🚀 11. Private Docker Repository – Pushing our built Docker Image into a private Registry on AWS
► Private Repository on AWS ECR
► docker login
► docker tag
► Push Docker Image to the Private Repo
🚀 12. Deploy our containerized application
🚀 13. Docker Volumes – Persist data in Docker
► When do we need Docker Volumes?
► What is Docker Volumes?
► Docker Volumes Types
🚀 14. Volumes Demo – Configure persistence for our demo project
▬▬▬▬▬▬ Want to learn more? 🚀 ▬▬▬▬▬▬
DevOps Tools, like GitHub Actions, Terraform ► https://bit.ly/2W9UEq6
Jenkins Pipeline Tutorials ► https://bit.ly/2Wunx08
Full Kubernetes tutorial ► https://www.youtube.com/playlist?list=PLy7NrYWoggjziYQIDorlXjTvvwweTYoNC
▬▬▬▬▬▬ Connect with me 👋 ▬▬▬▬▬▬
Join private FB group ► https://bit.ly/32UVSZP
INSTAGRAM ► https://bit.ly/2F3LXYJ
TWITTER ► https://bit.ly/3i54PUB
LINKEDIN ► https://bit.ly/3hWOLVT
▬▬▬▬▬▬ Courses & Ebooks & Bootcamp 🚀 ▬▬▬▬▬▬
► Become a DevOps Engineer – full educational program 👉🏼 https://bit.ly/3gEwf4V
► High-Quality and Hands-On Courses 👉🏼 https://bit.ly/3nIouPW
► Kubernetes 101 – compact and easy-to-read ebook bundle 👉🏼 https://bit.ly/3mPIaiU
source
Note: Docker Toolbox has been deprecated and is no longer in active development. Please use Docker Desktop instead. See Docker Desktop for Mac (https://docs.docker.com/docker-for-mac/) and Docker Desktop for Windows (https://docs.docker.com/docker-for-windows/).
► Complete DevOps Bootcamp 👉🏼 https://bit.ly/3gEwf4V
► Follow me on IG for behind the scenes content: 👉🏼 https://bit.ly/2F3LXYJ
▬▬▬▬▬▬ T I M E S T A M P S ⏰ ▬▬▬▬▬▬
0:00 – Intro and Course Overview
01:58 – What is Docker?
10:56 – What is a Container?
19:40 – Docker vs Virtual Machine
23:53 – Docker Installation
42:02 – Main Docker Commands
57:15 – Debugging a Container
1:06:39 – Demo Project Overview – Docker in Practice
1:10:08 – Developing with Containers
1:29:49 – Docker Compose – Running multiple services
1:42:02 – Dockerfile – Building our own Docker Image
2:04:36 – Private Docker Repository – Pushing our built Docker Image into a private Registry on AWS
2:19:06 – Deploy ou containerized application
2:27:26 – Docker Volumes – Persist data in Docker
2:33:03 – Docker Demo – Configure persistence for our demo project
2:45:13 – Wrap Up – Next Steps
Developing with Containers – Demo project: https://gitlab.com/nanuchi/techworld-js-docker-demo-app
If you get stuck anywhere, just comment under the video and I will try my best to answer your questions. Also you can join the private Techworld with Nana community group on FB (https://www.facebook.com/groups/techworldwithnana), which is there to exchange your knowledge with others and connect. 👍
If you liked the course be sure to subscribe to my channel for more related content 🙂
Detailed overview:
🚀 1. What is Docker?
► What is a container and what problems does it solve?
► Container repository – where do containers live?
► Development – before/after container
► Deployment – before/after container
🚀 2. What is a Container technically
► What is a container technically? (layers of images)
► Demo part (docker hub and run a docker container locally)
🚀 3. Docker vs Virtual Machine
🚀 4. Docker Installation
► Before Installing Docker – prerequisites
► Install docker on Mac
► Install docker on Windows
► Install docker on Linux
► Docker Toolbox for older Mac
► Docker Toolbox for older Windows
❗️ Note: Docker Toolbox has been deprecated. Please use Docker Desktop instead. See for Mac (https://docs.docker.com/docker-for-mac/) and for Windows (https://docs.docker.com/docker-for-windows/).
🚀 5. Main Docker Commands
► docker pull
► docker run
► docker ps
► docker run –options
► docker stop
► docker start
► docker ports, docker port mapping
🚀 6. Debugging a Container
► docker logs
► docker exec -it
🚀 7. Demo Project Overview – Docker in Practice (Nodejs App with MongoDB and MongoExpress UI)
🚀 8. Developing with Containers
► Pre-Requisites
► what we will do in this video
► 1st part: The JavaScript App (HTML, JavaScript Frontend, Node.js Backend)
► 2nd part: MongoDB and Mongo Express Set-Up with Docker
► Docker Network concept and demo
► 3rd part: Connect Node Server with MongoDB container
🚀 9. Docker Compose – Running multiple services
► What is Docker Compose?
► docker run commands VS docker compose
► How to use it? – Create the Docker Compose File (Demo)
► Docker Networking in Docker Compose
🚀 10. Dockerfile – Building our own Docker Image
► What is a Dockerfile?
► How the Dockerfile commands map to the image environment
► Create the Dockerfile (Demo)
► Build an image out of the Dockerfile
► Start the Application to verify: 1) App starts successfully 2) App environment is configured correctly
► do improvement – copy only relevant files
🚀 11. Private Docker Repository – Pushing our built Docker Image into a private Registry on AWS
► Create a Private Repository on AWS ECR
► Login to AWS (docker login)
► Image Naming concept in Docker registries
► docker tag to include the repository name in the image name
► Push the Docker Image to the Private Repository
► Make some changes to the Application, rebuild and push a new version to your AWS repository
🚀 12. Deploy our containerized application
🚀 13. Docker Volumes – Persist data in Docker
► When do we need Docker Volumes?
► What is Docker Volumes?
► 3 Docker Volumes Types
► Docker Volumes in docker-compose file
🚀 14. Volumes Demo – Configure persistence for our demo project
Cheers from brazil, all of your content is just amazing thanks for support the community <3
I enjoyed the course and learned a lot from it. The content is well organized and focused on practical examples. Thanks a lot for helping many people like me.
Thanks for this valuable session !! Looking forward to go through K8s tutorial.
Thanks a bunch, nana. This lesson is amazingly clear. It's not possible to put a price tag, thanks a ton for giving it free.
Thank you Nana for this tutorial, I ran into an error while following the instruction on mongo-express, the container would shut down by itself and when i check the logs for mongo-express, it says " (node:8) [MONGODB DRIVER] Warning: Current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
"
Any one else has this issues? at https://youtu.be/3c-iBn73dDE?t=5051
Hello Nana, I really appreciate your work in creating this course. This is epic and exciting to watch. By far the best docker course on Youtube. I am really thrilled.
Thank you very much for such a knowledge tutorial. One of the best tutorial, I came across.
Thanks again
Amazing Content. i have seen lot of videos but was not getting anything, but the way you explained it was amazing. Thanks for this great content.
It's safe to watch at 1.6x speed..
Thank you so much Nana, I've learnt a lot from your video. Before this, I jumped into another one which was suggested by Youtube and that guy provided non-sense tutorials, he just tried to sell his course, completely waste of time.
I've clicked on all google ads in this video, hope this helps a bit to your channel.
Could you share the codes used for the labs
how can we manage these volumes on aws
Thanks for this great tutorial. When run the image, those mongo & mongo-express will be run first automatically? Noticed that we only need "node server.js" in the docker-file
the program is very easy to understand
Could anybody explain to me what docker ps -a | grep my-app does? And what is grep? Thank you in advance
fantastic course, thank u Nana!
What is the difference between docker stop, docker kill and docker pause command ?
lets say if we use weblogic then we will have the image of the weblogic installed, i am assuming that we will just have to deploy the .ear or .war file and we will configure the weblogic the same way we do it now like configuring the data base etc. is this true statement or false?
Great Session !!!!!!!
Hello! I am wondering why are my logs showing differently than in the video? They are not structured and line starts with {"t":{"$date":"2022-04-30T14:48:58.969+00:00"},"s":"I", "c":"STORAGE", "id":22430… and so on.
FYI: Your MongoDB example worked up until the release of MongoDB 5.0 on July 13, 2021. For anyone using a cpu that doesn't support the AVX instruction, they will need to install MongoDB 4.4.6 (or earlier) to follow along with your tutorial (1:20) – change mongo to mongo:4.4.6. The newest version of docker-compose is v2.4.1 and it's now accessed through "docker compose" rather than "docker-compose"
Additionally, your YAML file (1:34:55) no longer works due to <reasons?>
To get it to work, the mongodb image needs to read –
image:mongo:4.4.6
And add the following three lines to mongo-express:
depends_on:
– "mongodb"
restart: unless-stopped
High quality content Nana, thanks for the dedication and sharing.
Just one comment here in april 2022, at timestamp 1:35:00 I had to add the "restart: always" entry on the mongo-express service section of the mongo.yaml Compose file to be able to get express connected.
Thanks for such an excellent content!
What a fantastic course.
Thanks a lot Nana, for the content, efforts and simplicity of the course. Kudos.
Thank you!
mongo-express container is crashing since the mongo database service is not yet up in the mongodb container while using docker-compose. I have tried using depends_on but it is till crashing. Any help?
Hello, Thanks for such a good tutorial. I am facing one issue while running 'docker run postgres:9.6' in ubuntu :-
docker run postgres:9.6
Unable to find image 'postgres:9.6' locally
9.6: Pulling from library/postgres
1cb79db8a9e7: Pull complete
f6bae7873dd7: Pull complete
8f7722dc50a7: Pull complete
e8622b8cb6f3: Pull complete
d6d74bba3a57: Pull complete
874d4d2a09fd: Pull complete
2d87c3a4038c: Pull complete
f955a6cf127b: Pull complete
f62dc55c568d: Pull complete
4e2c4902efbd: Pull complete
01c676df543a: Pull complete
1e3d335ef0b7: Pull complete
11087f2b0d87: Pull complete
4b9a74ac6ea0: Pull complete
Digest: sha256:caddd35b05cdd56c614ab1f674e63be778e0abdf54e71a7507ff3e28d4902698
Status: Downloaded newer image for postgres:9.6
Error: Database is uninitialized and superuser password is not specified.
You must specify POSTGRES_PASSWORD to a non-empty value for the
superuser. For example, "-e POSTGRES_PASSWORD=password" on "docker run".
You may also use "POSTGRES_HOST_AUTH_METHOD=trust" to allow all
connections without a password. This is not recommended.
See PostgreSQL documentation about "trust":
https://www.postgresql.org/docs/current/auth-trust.html
Can you please suggest some solution. I am using 'Ubuntu 21.04'. Thanks .
One of the best docker tutorials. Thank you
Very well explained this course in step by step, Thank you Nana for your efforts and sharing with us.