Docker Tutorial for Beginners [FULL COURSE in 3 Hours]

    29
    31



    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

    Previous articleBelajar Kubernetes – 1 Sebelum Belajar Kubernetes
    Next articleTutorial ansible bahasa indonesia – part 1 – introduction

    31 COMMENTS

    1. 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:40Docker vs Virtual Machine
      23:53Docker 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:49Docker 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:26Docker Volumes – Persist data in Docker
      2:33:03Docker 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

    2. 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

    3. 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.

    4. 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?

    5. 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

    6. 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.

    7. 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 .