Table of Contents
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
To use this plugin you'll need
- Know how to host CTFd w Docker
- Know how to use Docker
-
Map docker socket into CTFd container by modifying the
docker-compose.yml
file:services: ctfd: ... volumes: ... - /var/run/docker.sock:/var/run/docker.sock ...
-
Clone this repository
-
Rename "CTFd-Docker-Plugin" to "containers"
-
Place
containers
folder insideCTFd/plugins
directory
-
Connect to Docker daemon:
If the CTFd and the challenges host in the same machine, you just need to go to the plugin settings page
/containers/settings
and fill in everything you need except theBase URL
field.If you host the CTFd and the challenges in different machines, you need to follow the instructions one that page I dont think its working XD, I'll try to fix that later
-
Create the challenge:
- Select
container
type and fill all the required fields
-
If you want regular scoring for the challenge, set the maximum and minimum values to the same amount and the decay to zero.
-
In the image field, it allows you to select the docker image already on the machine
- In the
Connect type
field, it allows you to choose how to connect to the challenge such as via web or tcp
- Select
Admin can manage created containers, containers can also be filtered by challenge or player
Challenge view
Web | TCP |
---|---|
- Make the plugin work in user mode
- Make the admin dashboard can filter by team/user or challenge
- Make the plugin work with core-beta theme
See the open issues for a full list of proposed features (and known issues).
Distributed under the MIT License. See LICENSE.txt
for more information.
Actually, this is just an upgrade of andyjsmith's plugin that I upgraded by myself. I haven't worked much with the Licenses on github so it might be a violation. If you have anything please contact me by email below, I will respond within 2 days!
Thanks again andyjsmith for creating this base plugin!
Phan Nhat - @Discord ftpotato - contact@phannhat.id.vn
Project Link: https://github.com/phannhat17/CTFd-Docker-Plugin