captainVersion: 4
services:
    $$cap_appname-db:
        image: couchbase:$$cap_cb_version
        volumes:
            - $$cap_appname-data:/opt/couchbase/var
        restart: always
        caproverExtra:
            containerHttpPort: '8091'
caproverOneClickApp:
    variables:
        - id: $$cap_cb_version
          label: CouchBase Version
          defaultValue: 'community-6.6.0'
          description: Check out their Docker page for the valid tags https://registry.hub.docker.com/_/couchbase?tab=tags
          validRegex: /^([^\s^\/])+$/
    instructions:
        start: |-
            Couchbase Server, originally known as Membase, is an open-source, distributed multi-model NoSQL document-oriented database software package optimized for interactive applications. 
            After installation on CapRover, it will be available as srv-captain--YOUR_CONTAINER_NAME.
        end: |-
            Wait for few minutes to completly finish the deployment.
            Visit http://$$cap_appname.$$cap_root_domain on the host machine to see the Web Console to start Couchbase Server setup. 
            DB will be internally available as srv-captain--$$cap_appname in ports 8091,8092,8093,8094,11210.
            If you want this app available externally, map these ports on Caprover App-Config settings and allow on firewall.
    displayName: CouchBase
    isOfficial: true
    description: Couchbase is an open-source, distributed multi-model NoSQL document-oriented database software
    documentation: Taken from https://registry.hub.docker.com/_/couchbase
