Git Product home page Git Product logo

docker-shipit-engine's Introduction

docker-shipit-engine

Docker image for https://github.com/Shopify/shipit-engine

Running via Docker Compose

  • Create config/secrets.yml based off of config/secrets.example.yml and fill in your GitHub App's info
  • Run make start to start an instance. To stop it, run: make stop.

Database Management

On first run, you'll need to create the database. Do so by running make setup.

After upgrades, you may need to run database migrations. Do so by running make upgrade.

Teams

You can limit your Shipit instance to just members of your GitHub team. After adding your team(s) to your secrets.yml, run bundle exec rake teams:fetch to add your team members.

docker-shipit-engine's People

Contributors

marc-barry avatar paulanunda avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-shipit-engine's Issues

Possible improvements

At @marc-barry's demand, here a couple things that could make usage simpler.

dedicated command for initial setup & migrations

In the readme you give a command to setup the db: https://github.com/digitalocean/docker-shipit-engine#database-management

Would be great if this could be done in a single command handled by the entry point, e.g. docker run shipit setup, and possibly docker run shipit upgrade to run post upgrade.

pubsubstub might cause issues in this setup

Something that's a bit finicky with Shipit is the SSE connection handling. Long story short client will keep a long lived connection per stack page. These aren't very expensive, but if your Puma config is a bit too strict in term of threads, you can easily hold all thread.

The ideal setup is to have dedicated containers for handling the streaming endpoints, see: Shopify/shipit-engine#496 (comment) for more details. But that makes for a more complicated setup as you need a LB etc.

Let me know if you need more details on that.

Database

Maybe I misread, but it seems you are focusing on postgres, I guess it's fine, but I suppose MySQL could be supported as well (and is a much better tested solution with Shipit).

I'll update this issue if something else comes up.

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.