captainVersion: 4
services:
    $$cap_appname-db:
        image: neo4j:$$cap_neo4j_version
        volumes:
            - $$cap_appname-db-data:/data
        restart: unless-stopped
        environment:
            NEO4J_AUTH: $$cap_db_user/$$cap_db_pass
        caproverExtra:
            notExposeAsWebApp: 'true'
caproverOneClickApp:
    variables:
        - id: $$cap_neo4j_version
          label: Neo4j Version
          defaultValue: '4.1.9'
          description: Check out their Docker page for the valid tags https://hub.docker.com/_/neo4j?tab=tags
          validRegex: /^([^\s^\/])+$/
        - id: $$cap_db_user
          label: Neo4j Root User
          defaultValue: neo4j
          description: Username for the database user
          validRegex: /^([a-zA-Z0-9_])+$/
        - id: $$cap_db_pass
          label: Neo4j Root password
          defaultValue: $$cap_gen_random_hex(10)
          description: Password for the database user
          validRegex: /.{1,}/
    instructions:
        start: Neo4j is an open-source, NoSQL, native graph database that provides an ACID-compliant transactional backend for your applications. Enter your configuration parameters and click on next.
        end: Neo4j is deployed and available as srv-captain--$$cap_appname-db:7687 for Bolt and srv-captain--$$cap_appname-db:7474 for HTTP connections.
    displayName: Neo4j
    isOfficial: true
    description: Neo4j is an open-source, NoSQL, native graph database that provides an ACID-compliant transactional backend for your applications.
    documentation: Taken from https://hub.docker.com/_/neo4j
