You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
suisoh edited this page Jan 18, 2023
·
28 revisions
The ProgPhil Discord Bot Infrastructure
The Infrastructure Overview
Containerization with Docker
Docker is a popular software used in creating and building containerized applications. Why do we need to containerize our application? Docker allows us to package our app with its required libs and dependencies inside the docker container to make our deployment into the server more efficient, taking up less space and time. It will be easier for the ops team to deliver changes in the codebase and dependencies to the serving by rebuilding the image of the new app and restarting the running container deployed in the server.
flowchart TB;
A[/New App changes/] --> | on push:main | B(Build new docker image)
B --> | uploads to | C[(DockerHub Repo)]
C --> | connect to server via SSH | D(Pull latest image)
D --> E(Build docker image and restart container)
F[/Discord Token/] --> | pass via env | E
E --> G(Updated running Discord Bot)