Giter VIP home page Giter VIP logo

docket's Introduction

Docket

Manage fleets of containers across your own infrastructure. Built for CTFGuide's virtual terminal service.

Installation

  1. Install Docker by following the instructions here.
  2. Install Node.js by following the instructions here.
  3. Clone the repository:
  4. Install dependencies:

Usage

Endpoints

  • POST /api/containers/create
    • Create a Docker container.
    • Parameters: username, password, commandsToRun, port, root.
  • GET /containers/:containerId/status
    • Check the status of a Docker container.
  • DELETE /api/containers/:id
    • Delete a Docker container by ID.
  • GET /api/containers/:id/login
    • DEPRECATED: Initiate login for a container.

Supported Images

  • ctfguide: ShellInABox + Ubuntu 22.10 minimal with a few essential cyber related tools installed

Support for custom images is coming soon.

Tooling

You'll find tools in the src/tools folder in this repository.

Tools

  • visualizer.js (alpha v.0.1)
    • This spins up a web interface that allows you to visualize Docket.
    • node visualizer.js to run.

There will be many more tools in the future!

Dependencies

  • Express
  • Dockerode

Contributing

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/awesome-feature).
  3. Make your changes.
  4. Commit your changes (git commit -am 'Add some feature').
  5. Push to the branch (git push origin feature/awesome-feature).
  6. Create a new Pull Request.

License

This project is licensed under the MIT License.

Copyright

© CTFGuide Corporation 2024. Authored by Pranav Ramesh 2024.

docket's People

Contributors

laphatize avatar jaiming724 avatar

Stargazers

Cooper avatar Peter Gallwas avatar  avatar

docket's Issues

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.