使用ghcr和wsrx和docker在GZ:CTF中部署动态容器的题目

首先需要Dockerfile那一堆东西这里就不具体阐释了,直接用GitHub写好的项目复制粘贴就行

https://github.com/CTF-Archives/ctf-docker-template

然后需要一个token用来往github里面传packge,这个token是在github的setting里面的developer setting里面的personal access token里面生成的,需要把write package权限打开

然后打开ghcr.io,我们看到以下界面:
714yp.png

直接按照里面的操作在终端中依次输入

1
2
3
4
5
$ echo $PAT | docker login ghcr.io --username phanatic --password-stdin

$ docker tag app ghcr.io/phanatic/app:1.0.0

$ docker push ghcr.io/phanatic/app:1.0.0

$PAT是你的token,app是你的项目名,phanatic是你的用户名,1.0.0是你的版本号

然后会在你的github的packages里面看到你的项目,默认是private的,需要改成public的,直接去packages setting里面改就行

然后就可以在GZ:CTF里面部署了。在容器镜像里面填写那个ghcr.io开头的地址就行了,但是国内连不太上,把ghcr.io换成ghcr.nju.edu.cn就行了

然后在容器端口里面填写你的端口号,然后就可以部署了

大功告成