Skip to content

Containerization | Manual Deployment

Mohamed Hassan (JOSEPH) edited this page May 10, 2024 · 32 revisions

Tools to start over lovely bare metal strong πŸ’ͺ hardware:

  • Master Brain: Kubernetes

  • Containerization Runtime (Wrapper around deployable package): Docker

    • Mini-vm for saving costs no more. Don't over-think it. To construct an up and running a container
  • Runtime:

    • Which will contain the deployable package that will be an executable later and will be able to serve requests upon being healthy available
  • Deployable package: This part is variable over time

    • the Senior System admin [Linux Based] will need to move this one from his/her local laptop after building the latest package locally from the SCM server using specific commands and the final outcome will be a docker image, then
    • he/she has to move this image to the testing environment where Kubernetes resides 😜 then
    • run the container from this image in a healthy available state

Runtime of developed applications:

  • Backend (Java, Spring-Boot): JRE

  • Web Frontend (JavaScript, React): Nodejs


Hints upon Docker usage in different environments:

  • Use base image wisely when writing Dockerfile, because it affects on the image building time AKA transmitting fucken bloody hell a lot of packets over the network

    • Base image selection is based on less size and effectiveness like reviews and its robustness in different environments using a registry called Docker Hub.
  • Read a bit in image layers to optimize the image as much as you can (less layers is better)

Clone this wiki locally