Giter VIP home page Giter VIP logo

duels's Introduction

Duels

The primary purpose of this repo is to provide something of a framework in evaluating different frontend frameworks and backend languages. For instance...

  • All frontend apps must create an identical UI to manage books and reviews
  • All backend apps must provide an API that connects to a PostgreSQL database

The ulterior purpose, however, is to act as an opportunity to better understand containerization and isolation in the development environment. The main goals here are...

  • To use container- and service-oriented workflows to avoid polluting host with new tools
  • For each project to have its own minimalist image with necessary languages, build tools, and runtimes

Code sharing and dependencies

The two common approaches I have seen involve either...

  1. Baking the application code and dependencies into the image during build, or..
  2. Storing code and dependencies on host system and sharing as a volume during runtime

The first would be a viable option for production, but I would prefer not to have to rebuild images on any code change in development. Likewise, the latter seems preferable for development, but it would often require having dependency management tools on the host, which went against my goal of isolating tools.

Each container therefore manages the dependencies it needs at runtime via an entry script, but they store them on the host volume. This way, dependencies do not depend on the existence of the container, but they require no tooling present on the host and a simple restart is enough to fetch any new deps.

duels's People

Watchers

James Cloos avatar

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.