# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: godoxy
spec:
    description: Exported from project 67f4b2d14c553535631f7d45
    readme: ""
    services:
        - name: godoxy
          icon: https://cdn.zeabur.com/prebuilt.svg
          template: PREBUILT_V2
          spec:
            source:
                image: ghcr.io/yusing/godoxy:latest
            ports:
                - id: web
                  port: 80
                  type: HTTP
                - id: api
                  port: 8888
                  type: HTTP
            volumes:
                - id: logs
                  dir: /app/logs
                - id: data
                  dir: /app/data
            env:
                DEBUG_DISABLE_AUTH:
                    default: "true"
                    expose: false
                GODOXY_API_ADDR:
                    default: :8888
                    expose: false
                GODOXY_API_JWT_SECRET:
                    default: TFLAseTJo/YTKFFnaiFDfnNo1ifd5SgTlYCFCYIoSuM=
                    expose: false
                GODOXY_API_JWT_SECURE:
                    default: "false"
                    expose: false
                GODOXY_API_PASSWORD:
                    default: password
                    expose: false
                GODOXY_API_USER:
                    default: admin
                    expose: false
                GODOXY_PROMETHEUS_ENABLED:
                    default: "false"
                    expose: false
            configs:
                - path: /app/config/config.yml
                  template: |-
                    entrypoint:
                      middlewares:
                        - use: ModifyResponse
                          set_headers:
                            Access-Control-Allow-Methods: GET, POST, PUT, PATCH, DELETE, OPTIONS, HEAD
                            Access-Control-Allow-Headers: "*"
                            Access-Control-Allow-Origin: "*"
                            Access-Control-Max-Age: 180
                            Vary: "*"
                            X-XSS-Protection: 1; mode=block
                            Content-Security-Policy: "object-src 'self'; frame-ancestors 'self' https://*.godoxy.dev;"
                            Cross-Origin-Resource-Policy: same-site
                            X-Content-Type-Options: nosniff
                            Permissions-Policy: geolocation=(), midi=(), notifications=(), push=(), vibrate=(), fullscreen=(self), microphone=(), camera=(), magnetometer=(), gyroscope=(), speaker=()
                            X-Frame-Options: SAMEORIGIN
                            Referrer-Policy: same-origin
                            Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
                    autocert:
                      provider: local
                      cert_path: /app/certs/demo.crt
                      key_path: /app/certs/demo.key
                    providers:
                      include:
                        - demo.yml
                  permission: null
                  envsubst: null
                - path: /app/config/demo.yml
                  template: |-
                    x-common: &common
                      scheme: https
                      host: dummyvalue
                      healthcheck:
                        interval: 3h
                    google.com:
                      <<: *common
                      host: google.com
                      homepage:
                        name: Google
                        icon: "@selfhst/google.svg"
                    watcharr:
                      <<: *common
                      host: watcharr.app
                      homepage:
                        category: Media
                    overseerr:
                      <<: *common
                      host: overseerr.dev
                      homepage:
                        category: Media
                    coder:
                      <<: *common
                      host: coder.com
                      homepage:
                        category: Development
                    forgejo:
                      <<: *common
                      host: forgejo.org
                      homepage:
                        category: Development
                    adgh:
                      <<: *common
                      host: adguard.com
                      homepage:
                        name: AdGuard Home
                        icon: "@selfhst/adguard-home.png"
                        category: Networking
                    opnsense:
                      <<: *common
                      host: opnsense.org
                      homepage:
                        category: Networking
                    demo.godoxy.dev:
                      host: godoxy-webui.zeabur.internal
                      port: 3000
                      homepage:
                        show: false
                  permission: null
                  envsubst: null
                - path: /app/certs/demo.crt
                  template: |-
                    -----BEGIN CERTIFICATE-----
                    MIIDqDCCApCgAwIBAgIUBistWiiLyDD7CwX5xXM0WY4jz6QwDQYJKoZIhvcNAQEL
                    BQAwdjELMAkGA1UEBhMCMDAxDTALBgNVBAgMBERlbW8xDTALBgNVBAcMBERlbW8x
                    DzANBgNVBAoMBkdvRG94eTENMAsGA1UECwwERGVtbzENMAsGA1UEAwwERGVtbzEa
                    MBgGCSqGSIb3DQEJARYLZGVtb0Bnb2RveHkwHhcNMjUwNDA5MTYxNjE1WhcNNDcx
                    MTEwMTYxNjE1WjA8MQswCQYDVQQGEwIwMDENMAsGA1UEBwwERGVtbzEPMA0GA1UE
                    CgwGR29Eb3h5MQ0wCwYDVQQDDAREZW1vMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
                    MIIBCgKCAQEAtUNGKR7tycJ4lezTP+k7Tb6ckqzZJfzHdrYqcAhTJ65+kcGQcKBK
                    TOkW4jGh1OEHEEs/dSh+HE4xEUtUyCHK60DH/CdSW5Y4Pb5D8ip2QCp4++3bF59T
                    us5jcFztb5w23F5Q4t643iVkq5H4EZzpNzG8Hy+h6gKsTQNQkWmUcSJJfbtIwtNi
                    eRm/6wRVLviUVQ5UUP9VkkvdqL0E4Lgb5K4rFmDTNxm5ZYmnqI/K/tQoUfvlTHgg
                    lFTAoN/j8ODfB9sKAvggHt6BZ1gsV/d3R6gNgw1ONhQ8nCDkF5LSRVvUL86LHde2
                    5ePQqF4jy3cgTdgJDP4jQzizGFrPB4uCowIDAQABo2gwZjATBgNVHSUEDDAKBggr
                    BgEFBQcDATAPBgNVHREECDAGggRkZW1vMB0GA1UdDgQWBBTu6iX3Yu2vXvddBcs2
                    25tSR0oo4jAfBgNVHSMEGDAWgBRtQJzf6ZO2xsItIkI7g81+qw6ajTANBgkqhkiG
                    9w0BAQsFAAOCAQEArZbmrKaVfZc1EKMtXoAGAqqZ9J0KdlWkxa4x/DZAmUOPwh0V
                    y5ixlg6whfMtxTmmcYq9T+MCDYNJ3aEd7xlgoidZmAje8KPPHOTgNh5YWBFvujbA
                    oexe9RuL6RQtv/SEVKhPU9S7Jj1h9oWKXISRz4Z4CK015pOwGU6MxUBaKdsHrx+E
                    U5VHOCoP03OzZ8ui77P80yVpLhPiSTmZPGiUgobO2AbJbLWQeRdkPnge3nBmZG2+
                    hSYf+PHtrMqslbC5GhjeCWPE3Bs0XvpQ4ljl0eHgcWRMajdKdGZyy0fRoXdw8wGj
                    jUZXMmHxjb2mMxnecXp1eh2XTuWilGsiZr98Jg==
                    -----END CERTIFICATE-----
                  permission: null
                  envsubst: null
                - path: /app/certs/demo.key
                  template: |-
                    -----BEGIN PRIVATE KEY-----
                    MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC1Q0YpHu3JwniV
                    7NM/6TtNvpySrNkl/Md2tipwCFMnrn6RwZBwoEpM6RbiMaHU4QcQSz91KH4cTjER
                    S1TIIcrrQMf8J1Jbljg9vkPyKnZAKnj77dsXn1O6zmNwXO1vnDbcXlDi3rjeJWSr
                    kfgRnOk3MbwfL6HqAqxNA1CRaZRxIkl9u0jC02J5Gb/rBFUu+JRVDlRQ/1WSS92o
                    vQTguBvkrisWYNM3Gblliaeoj8r+1ChR++VMeCCUVMCg3+Pw4N8H2woC+CAe3oFn
                    WCxX93dHqA2DDU42FDycIOQXktJFW9Qvzosd17bl49CoXiPLdyBN2AkM/iNDOLMY
                    Ws8Hi4KjAgMBAAECggEAIsMWmv8/+iAOES6catbXVTcXfvegI21hcW5JIDgwfl00
                    D87v3PGYnjxbc6CyGQnY2XKc5mKQIOyL83Wfekwkxs4jLEP8Qu1BtvGcxT4IdJDQ
                    p/v7NwIKxDodjuh7bpqmWMfLul6dVJkWP+McEICnpzqmCdMQObkugwx+MIzvd2yY
                    nUUwCzgBz92aD0XbdVt6j5yU02JvuDQs9u29U+/CJxj7ntYOcGN0piMybH+7Pp6F
                    J3pDwh1AF9T3M52VSpQW9xaFIqXbWxjjEAv4mGhb0bqUkuSnz0QgNlPpxq/x+6VL
                    rZO00jy1iU5pvvItVYJ/uixMyHYVgaHbnFrH4XE7MQKBgQD/HwPlaLWW+C96MxgN
                    KRZqcgXZxwsb7tWr9ik3O3UwyGPqRpMoUpKMzUkbRm1HfoKTRwriMYsnsunT6IBH
                    D3tizt+9FMghm0WwnEgCxT15zjqgRBclFNdwEoHycRQjEi7zQlMJdQ7Qc42MdR1T
                    6+VbMTB4fQQ9UqoIKgwSvJXVkwKBgQC14yADmidObIczubzJqdHUcIy7Wg1rMSLX
                    4Y2I6Ks2fy+bXPFGq9MYuTYZH/cIS8NLFc9EYMyaRIoJZbFC6Pc4Wf0o3/2p8gof
                    JDw3YA0Jn03zkNZ5OEu6vI9Es01UDK7+1L9V0+TR1WEXVN9s0W1ORORIouauaTuH
                    ebNmxYjIsQKBgBZDR5zCWW5WNBZu1P95AWrCjn4ln3ONkPnTnl8igiSCqC1ugTL4
                    ma9Nzr5hk/G0OYLOpUV9203YkA0c8ezBjhveP6oJYTmFijxSNvp+6dFyTK1lo7tp
                    qS8vfkWA1qgE0zIJLKPbojJQkx6ZrbiAEmC11yv8hN0xFINn3+vWpyCfAoGAdFEu
                    bP9NObrv76VNVQ3z8U6UwU+Cm1VN+g71S2O38l792/ZhGhfSJNJ1BTZK7ZQ97Sui
                    ZBEfZ1yDhiTxal+/kdsCqfwspVzzGh07IRKc49VrrWKntdfJnj7txDqCLkj6NF9r
                    iQC8KXCy6Y/OXjHEHDS0ZLtAmLMVbbrnfsa+hdECgYAdcoz3r+GqvKsvx3GvMvVR
                    f/VL2G0OjRW/CFefcgUPY+E7ED5XsB8/jz6tGyY1m9vgAQ3HYvD1YN2c/ietXD77
                    sJqT9wEs39PKyswFlKf/WbhoeTefYmQ4bDbQUlkeArOYVhDU+oxWgaUX3eq+6MSW
                    PphQOmpHETM5MNKMwnen8A==
                    -----END PRIVATE KEY-----
                  permission: null
                  envsubst: null
            healthCheck:
                type: HTTP
                port: api
                http:
                    path: /v1/version
            portForwarding:
                enabled: false
        - name: yusinggodoxy-frontend
          icon: https://cdn.zeabur.com/prebuilt.svg
          template: PREBUILT_V2
          spec:
            source:
                image: ghcr.io/yusing/godoxy-frontend:latest
            ports:
                - id: web
                  port: 3000
                  type: HTTP
            env:
                GODOXY_API_ADDR:
                    default: godoxy.zeabur.internal:8888
                    expose: false
                HOSTNAME:
                    default: 0.0.0.0
                    expose: false
            configs: []
            healthCheck:
                type: HTTP
                port: http
                http:
                    path: /api/version
            portForwarding:
                enabled: false
