Giter Site home page Giter Site logo

depontimatteo / resume_website_2020 Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 19.39 MB

Personal Resume Website 2020 version, made with Python Flask, Gunicorn, Nginx, Docker

Dockerfile 0.17% Python 2.59% Shell 0.15% CSS 88.77% JavaScript 0.68% HTML 6.74% Smarty 0.89%

resume_website_2020's Introduction

Resume CV Website - Made with Python Flask in a DevOps way

Developing a web application in Python with Flask Framework, templating with Bootstrap, serving with Gunicorn and Nginx and using Docker with Docker Compose as container solution for development.

Continuous Integration with Travis CI and Continuous Delivery with Heroku

Build Status

Project intro

This website is a Proof of Concept of a project developed following DevOps philosophy and tools.
The Backend programming language is Python, frontend programming languages are HTML5, CSS3, Javascript.
The MVC Web Framework used is Flask, configured to be served by a Gunicorn Application Server, behind a webserver Nginx in a reverse-proxy mode.The grid-system is Bootstrap.
As containerization system I chose Docker (with docker-compose as a non-distributed orchestrator in development environment).
Unit tests are made with pytest and Selenium Webdriver to auto-simulate user interactions with the browser. I use Git as Version Control System and a remote Github repository, deeply integrated with Travis CI, in order to enable automatic tests in Continuous Integration mode and automatic releases to Heroku in Continuous Delivery mode.
As Heroku doesn't provide an HTTPS endpoint, in order to use SSL, prevent DDoS attacks and increase performances, the website is in a CDN with CloudFlare.
Remote project repository is available here: https://github.com/depontimatteo/resume_website_2020
Production deployed app is available here: https://www.maculade.com

Docker

Change your working directory in the latest one created via git clone, where Dockerfile is present, and launch these commands:

docker build -t flask_website .
docker run --name test_flask_website -it --env PORT=5000 -p 80:80 flask_website:latest

docker-compose

Create your own docker-compose.yml in the folder above the folder you created via git clone, with the following YAML syntax:

version: '3'

services:
  flask_website:
    restart: always
    build: ./flask_website
    environment:
      - PORT=5000
    ports:
      - "80:80"

and then launch these commands:

docker-compose build flask_website
docker-compose up flask_website

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.