captainVersion: 4
services:
    $$cap_appname:
        image: caprover/nginx-reverse-proxy:latest
        restart: always
        environment:
            UPSTREAM_HTTP_ADDRESS: $$cap_upstream_http_address
            CLIENT_MAX_BODY_SIZE: $$cap_max_body_size
caproverOneClickApp:
    variables:
        - id: $$cap_upstream_http_address
          label: Upstream address
          description: >-
              For example use https://caprover.com to forward all request to CapRover. Do not include a trailing slash.
               If you're forwarding http requests to a CapRover internal app use http://srv-captain--yourappnamehere or if you want a particular port, use http://srv-captain--yourappnamehere:8080
          defaultValue: ''
          validRegex: /^(http:\/\/|https:\/\/)\S*$/
        - id: $$cap_max_body_size
          label: Client max body size
          description: Sets the maximum allowed size of the client request body, specified in the “Content-Length” request header field. If the size in a request exceeds the configured value, the 413 (Request Entity Too Large) error is returned to the client. Please be aware that browsers cannot correctly display this error. Setting size to 0 disables checking of client request body size.
          defaultValue: 256M
          validRegex: /^\d+M$/
    instructions:
        start: This is a very simply reverse proxy image. It forwards all HTTP requests to the HTTP address that you define.
        end: Reverse Proxy is deployed and available as $$cap_appname
    displayName: Nginx Reverse Proxy
    isOfficial: true
    description: A simple nginx image preloaded with reverse proxy config that allows you to proxy a URL to another URL
    documentation: Taken from https://github.com/caprover/nginx-reverse-proxy
