Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps - Status | Demo | Docs | Install
  1. Cloudron Forum
  2. Keila
  3. First two quick questions

First two quick questions

Scheduled Pinned Locked Moved Keila
12 Posts 4 Posters 1.0k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • luckowL luckow

    Um. How can I disable registration? The package does not contain an .env file. New registrations can create projects = newsletters.

    Secondly: There is text marked in red in the captcha: Please contact the site admin if you see this

    Wait a minute. I'm talking to myself and have no idea what to do. πŸ™‚

    5b5c9112-2d0e-4104-8772-b5a6aef90eeb-image.png

    andreasduerenA Offline
    andreasduerenA Offline
    andreasdueren
    App Dev
    wrote on last edited by andreasdueren
    #2

    @luckow said in First two quick questions:

    How can I disable registration

    Secondly: There is text marked in red in the captcha: Please contact the site admin if you see this

    Yes we should probably prepoulate these values:

    DISABLE_REGISTRATION:true	Disable user registration by setting this variable to true
    

    Captcha
    Keila can use hCaptcha or Friendly Captcha to protect your sign-up forms. Configure the captcha provider with the following variables:

    CAPTCHA_PROVIDER		hcaptcha	Captcha provider, one of hcaptcha or friendly_captcha
    CAPTCHA_SITE_KEY		-	Captcha provider site key
    CAPTCHA_SECRET_KEY		-	Captcha provider secret key
    CAPTCHA_URL		variable	Captcha provider verification URL, defaults to https://hcaptcha.com/siteverify for hcaptcha and https://api.friendlycaptcha.com/api/v1/siteverify for friendly_captcha
    
    1 Reply Last reply
    2
    • andreasduerenA Offline
      andreasduerenA Offline
      andreasdueren
      App Dev
      wrote on last edited by
      #3

      This should work for the start.sh:

      #!/bin/bash
      
      set -euo pipefail
      
      echo "==> Creating directories"
      mkdir -p /app/data/uploads
      chown -R cloudron:cloudron /app/data
      
      # Generate secret key on first run
      if [ ! -f /app/data/secret_key.txt ]; then
          echo "==> Generating new secret key"
          head -c 48 /dev/urandom | base64 > /app/data/secret_key.txt
      fi
      
      # Create .env file on first run with user-configurable options
      if [ ! -f /app/data/.env ]; then
          echo "==> Creating .env file with default configuration"
          cat > /app/data/.env <<'EOF'
      # Keila Configuration
      # This file contains user-configurable options. System-critical settings
      # (database, URL, deployment) are managed by Cloudron and cannot be changed here.
      
      # Logging
      # Options: debug, info, warning, error
      LOG_LEVEL=info
      
      # User Registration
      # Set to true to disable new user registration
      DISABLE_REGISTRATION=false
      
      # Captcha Configuration (optional)
      # Providers: hcaptcha, friendly_captcha
      # CAPTCHA_PROVIDER=
      # CAPTCHA_SITE_KEY=
      # CAPTCHA_SECRET_KEY=
      
      # System Mailer Configuration (optional - uses Cloudron defaults)
      # Only uncomment if you need to override Cloudron's email settings
      # MAILER_TYPE=smtp
      # MAILER_SMTP_FROM_EMAIL=
      # MAILER_SMTP_HOST=
      # MAILER_SMTP_PORT=587
      # MAILER_SMTP_USER=
      # MAILER_SMTP_PASSWORD=
      # MAILER_ENABLE_STARTTLS=true
      
      # Additional Options
      # See https://www.keila.io/docs/configuration for more options
      EOF
          chown cloudron:cloudron /app/data/.env
      fi
      
      # Load user-configurable environment from .env file
      if [ -f /app/data/.env ]; then
          set -a
          source /app/data/.env
          set +a
      fi
      
      # Export environment variables for Keila
      # Note: System-critical variables below override any values from .env
      export PORT=4000
      export DB_URL=${CLOUDRON_POSTGRESQL_URL}
      export SECRET_KEY_BASE=$(cat /app/data/secret_key.txt)
      
      # Configure URLs from Cloudron environment variables
      export URL_HOST=${CLOUDRON_APP_DOMAIN}
      export URL_PATH="/"
      export URL_SCHEMA="https"
      export URL_PORT="443"
      
      # Configure email settings
      export MAILER_TYPE=smtp
      export MAILER_SMTP_FROM_EMAIL=${CLOUDRON_MAIL_FROM}
      export MAILER_SMTP_HOST=${CLOUDRON_MAIL_SMTP_SERVER}
      export MAILER_SMTP_PORT=${CLOUDRON_MAIL_SMTP_PORT}
      export MAILER_SMTP_USER=${CLOUDRON_MAIL_SMTP_USERNAME}
      export MAILER_SMTP_PASSWORD=${CLOUDRON_MAIL_SMTP_PASSWORD}
      export MAILER_ENABLE_STARTTLS=false
      
      # Configure user content directory
      export USER_CONTENT_DIR=/app/data/uploads
      
      export PGPASSWORD=${CLOUDRON_POSTGRESQL_PASSWORD}
      USER_TABLE_EXISTS=$(psql ${CLOUDRON_POSTGRESQL_URL} -XAwt -c "SELECT EXISTS ( SELECT FROM pg_tables WHERE schemaname = 'public' AND tablename = 'users')")
      if [[ $USER_TABLE_EXISTS == "t" ]]; then
          ADMIN_EXISTS=$(PGPASSWORD=${CLOUDRON_POSTGRESQL_PASSWORD} psql -h ${CLOUDRON_POSTGRESQL_HOST} -p ${CLOUDRON_POSTGRESQL_PORT} -U ${CLOUDRON_POSTGRESQL_USERNAME} -d ${CLOUDRON_POSTGRESQL_DATABASE} -AXqtc "SELECT count(*) FROM users u JOIN user_groups ug ON ug.user_id=u.id JOIN groups g ON ug.group_id=g.id WHERE g.name='root'")
      fi
      if [[ ${USER_TABLE_EXISTS:-} == "f" || ${ADMIN_EXISTS:-} -eq 0 ]]; then
          echo "==> Exporting default admin credentials on first run"
          export KEILA_USER="admin@cloudron.local"
          export KEILA_PASSWORD="changeme123"
      fi
      
      echo "==> Starting Keila"
      exec gosu cloudron:cloudron /app/code/bin/keila start
      
      andreasduerenA 1 Reply Last reply
      3
      • andreasduerenA andreasdueren

        This should work for the start.sh:

        #!/bin/bash
        
        set -euo pipefail
        
        echo "==> Creating directories"
        mkdir -p /app/data/uploads
        chown -R cloudron:cloudron /app/data
        
        # Generate secret key on first run
        if [ ! -f /app/data/secret_key.txt ]; then
            echo "==> Generating new secret key"
            head -c 48 /dev/urandom | base64 > /app/data/secret_key.txt
        fi
        
        # Create .env file on first run with user-configurable options
        if [ ! -f /app/data/.env ]; then
            echo "==> Creating .env file with default configuration"
            cat > /app/data/.env <<'EOF'
        # Keila Configuration
        # This file contains user-configurable options. System-critical settings
        # (database, URL, deployment) are managed by Cloudron and cannot be changed here.
        
        # Logging
        # Options: debug, info, warning, error
        LOG_LEVEL=info
        
        # User Registration
        # Set to true to disable new user registration
        DISABLE_REGISTRATION=false
        
        # Captcha Configuration (optional)
        # Providers: hcaptcha, friendly_captcha
        # CAPTCHA_PROVIDER=
        # CAPTCHA_SITE_KEY=
        # CAPTCHA_SECRET_KEY=
        
        # System Mailer Configuration (optional - uses Cloudron defaults)
        # Only uncomment if you need to override Cloudron's email settings
        # MAILER_TYPE=smtp
        # MAILER_SMTP_FROM_EMAIL=
        # MAILER_SMTP_HOST=
        # MAILER_SMTP_PORT=587
        # MAILER_SMTP_USER=
        # MAILER_SMTP_PASSWORD=
        # MAILER_ENABLE_STARTTLS=true
        
        # Additional Options
        # See https://www.keila.io/docs/configuration for more options
        EOF
            chown cloudron:cloudron /app/data/.env
        fi
        
        # Load user-configurable environment from .env file
        if [ -f /app/data/.env ]; then
            set -a
            source /app/data/.env
            set +a
        fi
        
        # Export environment variables for Keila
        # Note: System-critical variables below override any values from .env
        export PORT=4000
        export DB_URL=${CLOUDRON_POSTGRESQL_URL}
        export SECRET_KEY_BASE=$(cat /app/data/secret_key.txt)
        
        # Configure URLs from Cloudron environment variables
        export URL_HOST=${CLOUDRON_APP_DOMAIN}
        export URL_PATH="/"
        export URL_SCHEMA="https"
        export URL_PORT="443"
        
        # Configure email settings
        export MAILER_TYPE=smtp
        export MAILER_SMTP_FROM_EMAIL=${CLOUDRON_MAIL_FROM}
        export MAILER_SMTP_HOST=${CLOUDRON_MAIL_SMTP_SERVER}
        export MAILER_SMTP_PORT=${CLOUDRON_MAIL_SMTP_PORT}
        export MAILER_SMTP_USER=${CLOUDRON_MAIL_SMTP_USERNAME}
        export MAILER_SMTP_PASSWORD=${CLOUDRON_MAIL_SMTP_PASSWORD}
        export MAILER_ENABLE_STARTTLS=false
        
        # Configure user content directory
        export USER_CONTENT_DIR=/app/data/uploads
        
        export PGPASSWORD=${CLOUDRON_POSTGRESQL_PASSWORD}
        USER_TABLE_EXISTS=$(psql ${CLOUDRON_POSTGRESQL_URL} -XAwt -c "SELECT EXISTS ( SELECT FROM pg_tables WHERE schemaname = 'public' AND tablename = 'users')")
        if [[ $USER_TABLE_EXISTS == "t" ]]; then
            ADMIN_EXISTS=$(PGPASSWORD=${CLOUDRON_POSTGRESQL_PASSWORD} psql -h ${CLOUDRON_POSTGRESQL_HOST} -p ${CLOUDRON_POSTGRESQL_PORT} -U ${CLOUDRON_POSTGRESQL_USERNAME} -d ${CLOUDRON_POSTGRESQL_DATABASE} -AXqtc "SELECT count(*) FROM users u JOIN user_groups ug ON ug.user_id=u.id JOIN groups g ON ug.group_id=g.id WHERE g.name='root'")
        fi
        if [[ ${USER_TABLE_EXISTS:-} == "f" || ${ADMIN_EXISTS:-} -eq 0 ]]; then
            echo "==> Exporting default admin credentials on first run"
            export KEILA_USER="admin@cloudron.local"
            export KEILA_PASSWORD="changeme123"
        fi
        
        echo "==> Starting Keila"
        exec gosu cloudron:cloudron /app/code/bin/keila start
        
        andreasduerenA Offline
        andreasduerenA Offline
        andreasdueren
        App Dev
        wrote on last edited by
        #4

        @girish I don’t have permission to clone repos or anything on the git. Could you test this and deploy if it works?

        1 Reply Last reply
        1
        • jamesJ Online
          jamesJ Online
          james
          Staff
          wrote on last edited by
          #5

          Hello @andreasdueren
          The git repo https://git.cloudron.io/packages/keila-app is publicly accessible and can be cloned publicly:

          git clone https://git.cloudron.io/packages/keila-app
          

          Did you mean you have no permission to fork the repository?

          andreasduerenA 1 Reply Last reply
          0
          • jamesJ james

            Hello @andreasdueren
            The git repo https://git.cloudron.io/packages/keila-app is publicly accessible and can be cloned publicly:

            git clone https://git.cloudron.io/packages/keila-app
            

            Did you mean you have no permission to fork the repository?

            andreasduerenA Offline
            andreasduerenA Offline
            andreasdueren
            App Dev
            wrote on last edited by
            #6

            @james Nope can't fork, can't create repros either

            1 Reply Last reply
            2
            • girishG Offline
              girishG Offline
              girish
              Staff
              wrote on last edited by
              #7

              @andreasdueren can you check again now?

              andreasduerenA 2 Replies Last reply
              1
              • girishG girish

                @andreasdueren can you check again now?

                andreasduerenA Offline
                andreasduerenA Offline
                andreasdueren
                App Dev
                wrote on last edited by
                #8

                @girish Works, thanks

                1 Reply Last reply
                0
                • girishG girish

                  @andreasdueren can you check again now?

                  andreasduerenA Offline
                  andreasduerenA Offline
                  andreasdueren
                  App Dev
                  wrote on last edited by
                  #9

                  @girish Actually, still not. Just tried to fork Element but it returns Limit reached You've reached your limit of 100 projects created. Contact your GitLab administrator.

                  1 Reply Last reply
                  0
                  • girishG Offline
                    girishG Offline
                    girish
                    Staff
                    wrote on last edited by
                    #10

                    @andreasdueren I made your limit 1000 now. Does that help?

                    1 Reply Last reply
                    0
                    • andreasduerenA Offline
                      andreasduerenA Offline
                      andreasdueren
                      App Dev
                      wrote on last edited by
                      #11

                      Nope, must be a different thing blocking it then.

                      Screenshot 2025-11-06 at 09.49.43.png

                      1 Reply Last reply
                      0
                      • girishG Offline
                        girishG Offline
                        girish
                        Staff
                        wrote on last edited by
                        #12

                        @andreasdueren oh sorry πŸ˜• checking.

                        1 Reply Last reply
                        1

                        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                        With your input, this post could be even better πŸ’—

                        Register Login
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • Bookmarks
                        • Search