- Allow non-dynamic flag.
- Refine front for ctfd newer version.(@frankli0324)
- Add network prefix & timeout setting.
- Refine port and network range search
- Refine frp request
- Refine lock timeout
- Add Lan Domain
- Change backend to Docker Swarm.
- Support depoly different os image to different os node.
You should init docker swarm, and add your node to it. And name them with following command:
docker node update --label-add name=windows-1 ****
docker node update --label-add name=linux-1 ****
Name of them should begin with windows- or linux-.
And put them in the setting panel.
Then if you want to deploy a instance to windows node, You should tag your name with prefix "windows", like "glzjin/super_sql:windows".
And please modify the container network driver to 'Overlay'!
- Optimize for multi worker.
- Try to fix concurrency request problem.
Now You should set the redis with REDIS_HOST environment varible.
- Add frp http port setting.
You should config it at the settings for http redirect.
- Add Container Network Setting and DNS Setting.
Now You can setup a DNS Server in your Container Network.
- For single-instance network, Just connect your dns server to it and input the ip address in the seeting panel.
- For multi-instance network, You should rename the dns server to a name include "dns", than add it to auto connect instance. It will be used as a dns server.
- Refine plugin path.
- Refine removal.
- Add CPU usage limit.
- Allow the multi-image challenge.
Upgrade:
- Execute this SQL in ctfd database.
alter table dynamic_docker_challenge add column cpu_limit float default 0.5 after memory_limit;
-
Setting the containers you want to plugin to a single multi-image network. (In settings panel)
-
When you create a challenge you can set the docker image like this
{"socks": "serjs/go-socks5-proxy", "web": "blog_revenge_blog", "mysql": "blog_revenge_mysql", "oauth": "blog_revenge_oauth"}
The first one will be redirected the traffic.