安装docker

安装docker-compose

# 1.下载安装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
# 2.修改文件权限
sudo chmod +x /usr/local/bin/docker-compose
# 3.查看docker-compose版本
docker-compose -v

拉取镜像

docker pull gztime/gzctf:latest
docker pull postgres:alpine
  1. 创建一个GZCTF文件夹
  2. 文件里创建下面这两个文件,docker-compse.ymlappsettings.json

配置docker-compose.yml

version: '3.0'
services:
gzctf:
image: gztime/gzctf:latest
restart: always
environment:
- "GZCTF_ADMIN_PASSWORD=Admin@1234" # 管理员账户密码,账号为Admin
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"
# - "./k8sconfig.yaml:/app/k8sconfig.yaml:ro"
- "/var/run/docker.sock:/var/run/docker.sock"
depends_on:
- db

db:
image: postgres:alpine
restart: always
environment:
- "POSTGRES_PASSWORD=Admin@1234" # 数据库密码,务必要和appsettings.json中的配置一致
networks:
default:
volumes:
- "./data/db:/var/lib/postgresql/data"

配置appsettings.json

{
"AllowedHosts": "*",
"ConnectionStrings": {
"Database": "Host=db:5432;Database=gzctf;Username=postgres;Password=Admin@1234"
//<String1>换成数据库密码,随机密码且长度足够
},
"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", // 此处为163邮箱服务器,具体自定
"Port": 465
}
},
"XorKey": "Admin@1234", // 自定XorKey
"ContainerProvider": {
"Type": "Docker",
"PublicEntry": "192.168.16.128", // 域名或IP配置,用于容器生成,域名不带http/https
"DockerConfig": {
"SwarmMode": false,
"Uri": "" // 本地配置Docker因此此处置空
}
},
"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文件夹下面输入

docker-compose up -d

访问

用户名:Admin

密码:Admin@1234