运维 | ctfd环境搭建基于docker-compose(ubuntu)

ctfd环境搭建基于docker-compose(ubuntu)

因为校赛所以要搭个平台,懒得自己写了,就用了ctfd。
参考官网的搭建说明:https://docs.ctfd.io/docs/deployment/installation

使用的是ubuntu。

先装docker和docker-compose

apt install docker.io
apt install docker-compose

验证:

docker -v
docker-compose --version

环境搭好以后把ctfd的包给整进来,我用的是3.4.3release版本的。
https://github.com/CTFd/CTFd/releases/tag/3.4.3

需要我们指定一个秘钥,这里我使用了官网的操作:

head -c 64 /dev/urandom > .ctfd_secret_key

然后是docker-compose up
image

如果是第一次用会需要pull几个镜像下来,等等就好。
如果实在太慢了,就换个docker源:https://www.cnblogs.com/1jzz/p/14327986.html
中间有一步需要安装python的库的,可以改Dockerfile来换个源:
在pip那一行加:

-i https://pypi.tuna.tsinghua.edu.cn/simple   # 这个是清华的源

但是上面的操作都顺利下来以后还是遇到了str和bytes的问题,推测是python版本问题:
image

这里应该是本地运行导致的报错,估摸着是本地的python版本是python3导致的,apt安装的docker-compose版本是1.25,就把docker-compose卸载了用pip重装了一下(1.29版本),然后来个软链接:
image

然后再试一次就好了,注意可能需要将docker-entrypoint.sh加上可执行权限!:
image

好了以后可以访问:http://localhost:8000,进入setup界面:
image

至于数据导出和备份什么的我还没没研究清楚,应该都会volumes挂在到相应的文件夹,应该是在项目目录的.data隐藏目录下,如果要备份啥的整这个目录就好了。

希望比赛顺利2333,还得出题呜呜呜。

posted @ 2022-03-16 14:01  Mz1  阅读(782)  评论(0编辑  收藏  举报