/docker-for-beginners

This is a demo project about containerization. Showcasing a connection of a NodeJS App and a database.

Primary LanguageHTML

Table of Contents

  1. Run local: Application
  2. Run local: Database
  3. Docker-Compose: MongoDB
  4. Build: Container Image
  1. Install dependencies: npm i
  2. View package.json
  3. Start server: npm start
  4. Checkout in browser: localhost:3000

Run MongoDB Container Image

  • docker pull mongo || docker pull mongo:7.0.0
  • docker run -d mongo:7.0.0

View Database

  • docker pull mongo-express:1.0.2

Docker Network

  • docker network ls
  • docker network create mongo-network

MongoDB [port-forwarded, container name, network, env-vars, detached]

  • docker run -p 27017:27017 --rm --name mongo --net mongo-network -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=password -d mongo:7.0.0
  • Check browser: localhost:27017

MongoDB - Express [port-forwarded, container name, network, env-vars, detached]

  • docker run -p 8081:8081 -d -e ME_CONFIG_MONGODB_ADMINUSERNAME=admin -e ME_CONFIG_MONGODB_ADMINPASSWORD=password -e ME_CONFIG_MONGODB_SERVER=mongo --net mongo-network --name mongo-express --rm mongo-express:1.0.2
  • Check browser: localhost:8081
  • docker-compose -f mongo.yaml up -d
  • docker-compose -f mongo.yaml down
  • docker build -t my-app:1.0 .
  • docker stop $(docker ps -a -q) (Stop all containers)
  • docker rm $(docker ps -a -q) (Delete all stopped containers)
  • docker system prune --all --volumes (Wipe it)