Skip to content

Latest commit

 

History

History
46 lines (31 loc) · 1.21 KB

README.md

File metadata and controls

46 lines (31 loc) · 1.21 KB

go-runner

A naive imitation of app-runner for Go app (example).

apis

  • GET /api/health return health of go-runner

  • POST /api/apps register and deploy a go-app

    gitUrl - git url to the app being deployed

    app - app name

  • PUT /api/:app operate a go-app

    action - deploy or restart

  • GET /api/:app/stdout stream app stdout

  • GET /api/:app/stderr stream app stderr

  • ANY /:app/* access go-apps

TODO

  • basic app CRUD
  • unixsocket support in the back
  • endpoint for streaming stdout/stderr of an app
  • a cli client gorun
    • init
    • register
    • push
    • delete
    • status
    • curl
  • https support in front
  • tcp socket support in the back
  • try using Namespace to isolate apps (ref: Linux Namespace)
    • PID namespace
    • filesystem
  • try using cgroup to manage apps resources (ref: cgroup)
    • cpu
    • memory