barimehdi77 / inception

This project aims to broaden my knowledge of system administration by using Docker. I will virtualize several Docker images, creating them in my new personal virtual machine.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

🤔 Description

This project consists in having you set up a small infrastructure composed of different services under specific rules. The whole project has to be done in a virtual machine. You have to use docker-compose.

Screen Shot 2021-12-22 at 8 41 27 PM

Inception

Mandatory part

Each Docker image must have the same name as its corresponding service. Each service has to run in a dedicated container: You then have to set up:

  • A Docker container that contains NGINX with TLSv1.2 or TLSv1.3 only.
  • A Docker container that contains WordPress + php-fpm (it must be installed and configured) only without nginx.
  • A Docker container that contains MariaDB only without nginx.
  • A volume that contains your WordPress database.
  • A second volume that contains your WordPress website files.
  • A docker-network that establishes the connection between your containers.
  • Your containers have to restart in case of a crash.

Here is an example diagram of the expected result:

Screen Shot 2021-12-22 at 8 38 03 PM

Bonus part

For this project, the bonus part is aimed to be simple. A Dockerfile must be written for each extra service. Thus, each one of them will run inside its own container and will have, if necessary, its dedicated volume.

Bonus list:

  • Set up redis cache for your WordPress website in order to properly manage the cache.
  • Set up a FTP server container pointing to the volume of your WordPress website.
  • Create a simple static website in the language of your choice except PHP (Yes, PHP is excluded!). For example, a showcase site or a site for presenting your resume.
  • Set up Adminer.
  • Set up a service of your choice that you think is useful. During the defense, you will have to justify your choice.

⚙️ Start Containers

You can run:

  • make in the root of the directory to build and start all container

  • make ls to list all the images and containers

  • make status to see the running containers

  • make build to build all images in docker-compose

  • make up to start all containers in docker-compose

  • make logs to see the logs of the containers

  • make stop to stop all containers in the docker-compose

  • make start to start all containers in the docker-compose

  • make down to remove all containers in the docker-compose

  • make reload to remove, build and run all containers in docker-compose

  • make rm NOTE This command will remove ALL CONTAINERS IN YOUR OPERATOR SYSTEM.

  • make rvolumes to delete all volumes folders from your system

  • make volumes to create folders of the volumes in your system.

👨‍💻 Ressources


"Buy Me A Coffee" ko-fi paypal

About

This project aims to broaden my knowledge of system administration by using Docker. I will virtualize several Docker images, creating them in my new personal virtual machine.


Languages

Language:PHP 73.7%Language:Shell 10.3%Language:HTML 10.1%Language:Makefile 5.4%Language:Dockerfile 0.3%Language:JavaScript 0.2%