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 | Demo | Docs | Install
  1. Cloudron Forum
  2. App Packaging & Development
  3. [Package] Typesense Search Engine - Fast, Typo-Tolerant Search

[Package] Typesense Search Engine - Fast, Typo-Tolerant Search

Scheduled Pinned Locked Moved App Packaging & Development
15 Posts 5 Posters 1.3k Views 6 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.
  • girishG Offline
    girishG Offline
    girish
    Staff
    wrote on last edited by
    #6

    @Dave-Swift Looks great! I will add this to our publishing queue . Thanks again.

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

      Hello @Dave-Swift
      I took the liberty to edit your initial post to add the missing CloudronManifest.json and Icon which is needed for the custom installation.

      1 Reply Last reply
      1
      • Dave SwiftD Offline
        Dave SwiftD Offline
        Dave Swift
        wrote on last edited by
        #8

        Thanks James -- I'm confused though as both of those files were included.

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

          @Dave-Swift
          Yes they are in included in the git repo, indeed.
          But your code block for copy-paste installing was only:

          cloudron install --image clientamp/typesense-cloudron:29.0.0 --location $YOUR_CUSTOM_LOCATION
          

          Without knowing that one needs the other files locally, just this command will fail the installation.
          It is just a failsafe to prevent posts like "the provided command failed with xyz" if people simple copy-paste.

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

            @vladimir.d has been cleaning this up. Unfortunately, we hit a road block - https://typesense.org/docs/guide/backups.html#backup-steps . This means Cloudron backup strategy as it is right now won't work since Typesense is like a database.

            robiR 1 Reply Last reply
            0
            • girishG girish

              @vladimir.d has been cleaning this up. Unfortunately, we hit a road block - https://typesense.org/docs/guide/backups.html#backup-steps . This means Cloudron backup strategy as it is right now won't work since Typesense is like a database.

              robiR Offline
              robiR Offline
              robi
              wrote last edited by
              #11

              @girish why is that a blocker? As it points out it can generate a snapshot from an api call, drop it in /app/data and then you can ignore the data dir during backup since it would be redundant and potentially inconsistent.

              But even if you leave it, you would just untar that snapshot over it to make it consistent.

              Conscious tech

              1 Reply Last reply
              0
              • nebulonN Away
                nebulonN Away
                nebulon
                Staff
                wrote last edited by
                #12

                the blocker here is, that Cloudron has no way currently to trigger app internal scripts at the point of creating a backup. For database addons, there are special hooks to do so. For sqlite (which is using /app/data via localStorage addon) we have added specific code to issue a db dump. So something like this is required for typesense also then.

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

                  To add to what @nebulon said, I think the api call requires a token as well . So, the platform code cannot call a http route and there is no CLI either afaict (for all the db tools, we use CLI).

                  1 Reply Last reply
                  2
                  • robiR Offline
                    robiR Offline
                    robi
                    wrote last edited by
                    #14

                    Sounds like a useful enhancement then.

                    Conscious tech

                    1 Reply Last reply
                    0
                    • Dave SwiftD Offline
                      Dave SwiftD Offline
                      Dave Swift
                      wrote last edited by
                      #15

                      Hi @girish, @nebulon, and team,

                      I've updated the Typesense package to address the backup roadblock from the docs (https://typesense.org/docs/guide/backups.html#backup-steps). This should make it compatible with Cloudron's strategy for database-like apps.

                      Key changes in v29.0.1:

                      • Added "localstorage" addon for persistent /app/data (includes DB files and snapshots).
                      • Defaulted data-dir to /app/data in start.sh.
                      • Added backup.sh to trigger a full server snapshot via /operations/snapshot API, saving to snapshots/latest.tar (relative to /app/data). It backs up all collections automatically and checks for success.
                      • Added restore.sh to untar latest.tar on startup if present, ensuring consistent restores.
                      • Improved logging for the API key in start.sh.

                      Tested on my live install (search.daveswift.com with existing collections)—backup creates the snapshot file, and restore loads it on restart without issues. The snapshot is a complete dump of all data, per Typesense docs.

                      Repo: https://github.com/clientamp/typesense-cloudron (changes on main, see CHANGELOG.md). Latest image: clientamp/typesense-cloudron:29.0.1 (or timestamped builds like 20250929-111100).

                      For integration, Cloudron could run backup.sh via a hook before filesystem backup, then ignore raw DB files. Happy to add more (e.g., compression).

                      Thanks!

                      1 Reply Last reply
                      4
                      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