GoAway 项目启动与配置教程

GoAway 项目启动与配置教程

goaway DNS sinkhole written in go goaway 项目地址: https://gitcode.com/gh_mirrors/goa/goaway

1. 项目的目录结构及介绍

GoAway 项目是一个轻量级的 DNS Sinkhole,用于拦截不需要的域名。项目的目录结构如下:

goaway/
├── .github/                    # GitHub 工作流和配置文件
├── backend/                    # 后端代码目录
├── client/                     # 前端代码目录
├── resources/                  # 资源文件目录
├── test/                       # 测试代码目录
├── .air.toml                   # CI/CD 配置文件
├── .dockerignore               # Docker 构建忽略文件
├── .gitignore                  # Git 忽略文件
├── .goreleaser.yml             # GoReleaser 配置文件
├── .pre-commit-config.yaml     # 预提交钩子配置文件
├── .releaserc.json             # Release 配置文件
├── CHANGELOG.md                # 更新日志文件
├── Dockerfile                  # Docker 构建文件
├── LICENSE                     # 项目许可证文件
├── Makefile                    # Makefile 文件
├── README.md                   # 项目说明文件
├── docker-compose.yml          # Docker Compose 配置文件
├── go.mod                      # Go 依赖管理文件
├── go.sum                      # Go 依赖校验文件
├── installer.sh                # 安装脚本
├── main.go                     # 主程序文件
├── settings.yaml               # 配置文件
├── start.sh                    # 启动脚本
└── updater.sh                  # 更新脚本

2. 项目的启动文件介绍

项目的启动主要通过 main.go 文件进行。这是 GoAway 的主程序文件,它负责初始化和启动 DNS 和 Web 服务器。

启动项目的方式有以下几种:

  • 使用 Docker:

    docker run pommee/goaway:latest
    

    或者使用 Docker Compose:

    docker compose up -d
    
  • 快速安装: 使用安装脚本进行安装:

    curl https://raw.githubusercontent.com/pommee/goaway/main/installer.sh | sh /dev/stdin
    
  • 从源代码构建: 首先构建前端客户端:

    make build
    

    然后构建 GoAway 二进制文件:

    go build -o goaway
    

    最后启动服务:

    ./goaway
    

3. 项目的配置文件介绍

GoAway 的默认设置定义在 settings.yaml 文件中。该文件包含了项目的所有配置项,你可以根据需要修改这些值。

以下是一些主要的配置项:

  • --auth:是否启用管理员仪表板的认证(默认为 true)。
  • --dns-port:DNS 服务的端口(默认为 53)。
  • --log-level:日志级别(0 = DEBUG, 1 = INFO, 2 = WARNING, 3 = ERROR,默认为 1)。
  • --logging:是否启用日志记录(默认为 true)。
  • --statistics-retention:保留统计数据的天数(默认为 1)。
  • --webserver-port:Web 服务的端口(默认为 8080)。

你可以通过命令行参数或修改 settings.yaml 文件来自定义这些配置项。

goaway DNS sinkhole written in go goaway 项目地址: https://gitcode.com/gh_mirrors/goa/goaway

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

娄佳淑Floyd

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值