安装docker
安装docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose -v
|
拉取镜像
docker pull gztime/gzctf:latest docker pull postgres:alpine
|
- 创建一个GZCTF文件夹
- 文件里创建下面这两个文件,
docker-compse.yml
和 appsettings.json
配置docker-compose.yml
version: '3.0' services: gzctf: image: gztime/gzctf:latest restart: always environment: - "GZCTF_ADMIN_PASSWORD=Admin@1234" ports: - "80:80" networks: default: volumes: - "./data/files:/app/uploads" - "./appsettings.json:/app/appsettings.json:ro" - "./logs:/app/log" - "./data/keys:/root/.aspnet/DataProtection-Keys" - "/var/run/docker.sock:/var/run/docker.sock" depends_on: - db
db: image: postgres:alpine restart: always environment: - "POSTGRES_PASSWORD=Admin@1234" networks: default: volumes: - "./data/db:/var/lib/postgresql/data"
|
配置appsettings.json
{ "AllowedHosts": "*", "ConnectionStrings": { "Database": "Host=db:5432;Database=gzctf;Username=postgres;Password=Admin@1234" }, "Logging": { "LogLevel": { "Default": "Information", "Microsoft": "Warning", "Microsoft.Hosting.Lifetime": "Information" } }, "EmailConfig": { "SendMailAddress": "Admin@qq.com", "UserName": "ctf_noreply", "Password": "UWPTINWMFPQVMPAH", "Smtp": { "Host": "smtp.163.com", "Port": 465 } }, "XorKey": "Admin@1234", "ContainerProvider": { "Type": "Docker", "PublicEntry": "192.168.16.128", "DockerConfig": { "SwarmMode": false, "Uri": "" } }, "RequestLogging": false, "DisableRateLimit": false, "RegistryConfig": { "UserName": "", "Password": "", "ServerAddress": "" }, "GoogleRecaptcha": { "VerifyAPIAddress": "https://www.recaptcha.net/recaptcha/api/siteverify", "Sitekey": "", "Secretkey": "", "RecaptchaThreshold": "0.5" } }
|
记得把注释全部删掉,需要修改的地方PublicEntry,根据自己服务器IP进行配置。其他自行修改
运行
在GZCTF文件夹下面输入

访问
用户名:Admin
密码:Admin@1234