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
  • 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. Mastodon
  3. How to install Elasticsearch on Mastodon?

How to install Elasticsearch on Mastodon?

Scheduled Pinned Locked Moved Mastodon
42 Posts 13 Posters 4.6k Views 13 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.
  • shanelord01S shanelord01

    @girish My VM host (when I SSH into it) is showing the eth1 interface correctly via "ip link show"

    When I use the Cloudron Terminal under my Mastodon app, it does not show the eth1 interface, only loopback and eth0.

    So it is not my host.

    Outcome is, Cloudron can't see the VLAN network on Linode - at least nothing is showing in the UI, and I am unable to use ping in the Cloudron terminal for some reason.

    I'll keep testing.

    girishG Do not disturb
    girishG Do not disturb
    girish
    Staff
    wrote on last edited by
    #29

    @shanelord01 ah, I understood what you are saying now! The Cloudron Web Terminal is a terminal into the container. The container's network interfaces are completely different from those on the host. So, what you are seeing ins expected.

    If I understand correctly now: you put your ES and Cloudron on the same VLAN. You are able to ping the ES from Cloudron host machine but unable to do so from the web terminal. Correct?

    1 Reply Last reply
    1
    • girishG Do not disturb
      girishG Do not disturb
      girish
      Staff
      wrote on last edited by
      #30

      I tried this out of curiosity.

      I installed Cloudron and attached a VLAN. Then, from a web terminal of an app

      root@3270ef46-f6cc-463a-bff2-33062223f536:/app/code# ip addr
      1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
          link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
          inet 127.0.0.1/8 scope host lo
             valid_lft forever preferred_lft forever
          inet6 ::1/128 scope host 
             valid_lft forever preferred_lft forever
      23: eth0@if24: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
          link/ether 02:42:ac:12:13:23 brd ff:ff:ff:ff:ff:ff link-netnsid 0
          inet 172.18.19.35/16 brd 172.18.255.255 scope global eth0
             valid_lft forever preferred_lft forever
          inet6 fd00:c107:d509::8/64 scope global nodad 
             valid_lft forever preferred_lft forever
          inet6 fe80::42:acff:fe12:1323/64 scope link 
             valid_lft forever preferred_lft forever
      

      I ran nc -l 3000 on another server which is also in same LAN. Then, I can connect from app terminal:

      root@3270ef46-f6cc-463a-bff2-33062223f536:/app/code# telnet 192.0.2.3 3000
      Trying 192.0.2.3...
      Connected to 192.0.2.3.
      Escape character is '^]'.
      
      
      1 Reply Last reply
      2
      • shanelord01S Offline
        shanelord01S Offline
        shanelord01
        wrote on last edited by shanelord01
        #31

        Thanks - I've done some further testing. You are right - it does work.

        Seems the Debian host I was using on Linode (using "Secure Your Server" image) was blocking port 9200 by default so had to adjust iptables to allow external access. Had a hard time tracking that down.

        Added:

        iptables -I INPUT -p tcp --dport 9200 --syn -j ACCEPT
        

        then saved it. Worked immediately.

        1 Reply Last reply
        3
        • N Offline
          N Offline
          nafets-lesierk
          wrote on last edited by nafets-lesierk
          #32

          Can't we just use a Cloudron LAMP stack, install it there and expose it only to the internal Cloudron network for use with Mastodon, Nextcloud, anything?
          As with memory requirements: the instructions referenced above -> https://blog.thms.uk/2023/09/mastodon-elasticsearch , point out for smaller purposes = 4GB RAM ...
          Cheers

          1 Reply Last reply
          1
          • bmannB Offline
            bmannB Offline
            bmann
            wrote on last edited by
            #33

            Is Cloudron going to directly support ElasticSearch installs so Mastodon support can be full featured?

            What is the recommended path here that doesn’t mean running a second machine?

            @girish

            1 Reply Last reply
            1
            • girishG Do not disturb
              girishG Do not disturb
              girish
              Staff
              wrote on last edited by
              #34

              @bmann it's not in the immediate roadmap. The last I checked the apps couldn't agree on which ES version to use, so it wasn't easy to share a single ES across instances either.

              1 Reply Last reply
              1
              • jdaviescoatesJ jdaviescoates

                @girish said in How to install Elasticsearch on Mastodon?:

                @nichu42 I was just looking at it briefly. In case you go down this route... For some reason, they only support ES7 per https://github.com/mastodon/mastodon/issues/26544#issuecomment-1684005007 which is almost https://www.elastic.co/support/eol .

                Also, Nextcloud ES integration now requires ES8 which could conflict with the previous ES7 requirement.

                Finally, https://github.com/mastodon/mastodon/issues/18535 suggests OpenSearch 2.4.x might be supported.

                I note that the Mastodon docs do now say:

                Mastodon is tested with ElasticSearch version 7. It should support OpenSearch, as well as ElectisSearch versions 6 and 8, but those setups are not officially supported.

                (also, I've just submitted a pull request to fix their tiny Elastis typo 🙂 )

                jdaviescoatesJ Offline
                jdaviescoatesJ Offline
                jdaviescoates
                wrote on last edited by
                #35

                @girish just in case you've forgotten 🙂

                @jdaviescoates said in How to install Elasticsearch on Mastodon?:

                I note that the Mastodon docs do now say:

                Mastodon is tested with ElasticSearch version 7. It should support OpenSearch, as well as ElectisSearch versions 6 and 8, but those setups are not officially supported.
                

                So sounds to me like the

                @girish said in How to install Elasticsearch on Mastodon?:

                apps couldn't agree on which ES version to use

                Might not be much of an issue in practice.

                It'd be great to have an ElasticSearch Addon added to Cloudron.

                I use Cloudron with Gandi & Hetzner

                1 Reply Last reply
                1
                • bmannB Offline
                  bmannB Offline
                  bmann
                  wrote on last edited by
                  #36

                  I think the challenge here is that people who can’t package custom docker are blocked from using supported apps with full features.

                  If Cloudron isn’t going to work on it, would be good to know, so I can figure out how to package it manually.

                  scookeS 1 Reply Last reply
                  1
                  • bmannB bmann

                    I think the challenge here is that people who can’t package custom docker are blocked from using supported apps with full features.

                    If Cloudron isn’t going to work on it, would be good to know, so I can figure out how to package it manually.

                    scookeS Offline
                    scookeS Offline
                    scooke
                    wrote on last edited by
                    #37

                    @bmann said in How to install Elasticsearch on Mastodon?:

                    If Cloudron isn’t going to work on it,

                    They already said it's not on the immediate roadmap.

                    so I can figure out how to package it manually.

                    Everyone would appreciate your efforts in figuring out how to package it manually and sharing that! Thank you!

                    A life lived in fear is a life half-lived

                    jdaviescoatesJ 1 Reply Last reply
                    2
                    • scookeS scooke

                      @bmann said in How to install Elasticsearch on Mastodon?:

                      If Cloudron isn’t going to work on it,

                      They already said it's not on the immediate roadmap.

                      so I can figure out how to package it manually.

                      Everyone would appreciate your efforts in figuring out how to package it manually and sharing that! Thank you!

                      jdaviescoatesJ Offline
                      jdaviescoatesJ Offline
                      jdaviescoates
                      wrote on last edited by
                      #38

                      @scooke said in How to install Elasticsearch on Mastodon?:

                      They already said it's not on the immediate roadmap.

                      Yeah, but they have also previously sais somewhere on here the plan is to make an addon, plus @girish liked my post above about different versions perhaps not really being an issue

                      I use Cloudron with Gandi & Hetzner

                      1 Reply Last reply
                      0
                      • girishG Do not disturb
                        girishG Do not disturb
                        girish
                        Staff
                        wrote on last edited by
                        #39

                        This is still not in our immediate roadmap. I think easiest fix is to just elastic search in a separate VPS and connect mastodon to it, no?

                        1 Reply Last reply
                        2
                        • bmannB Offline
                          bmannB Offline
                          bmann
                          wrote on last edited by bmann
                          #40

                          Separate VPS == means me running an entire other operating system, maintaining it, and updating it. So costs and time. I’m running Cloudron precisely so I don’t have to do this.

                          It’s totally fine that you only support some apps — but when it includes core functionality for an app this is the sort of thing people are going to want.

                          Ok, I’ll start a thread about crowdfunding ElasticSearch packaging for a custom Cloudron docker image.

                          1 Reply Last reply
                          1
                          • bmannB bmann referenced this topic on
                          • scookeS Offline
                            scookeS Offline
                            scooke
                            wrote on last edited by
                            #41

                            @bmann Don't get too distracted by a new thread that you forget about figuring out how to package it. Seriously, lots of ppl would be very grateful to you.

                            A life lived in fear is a life half-lived

                            1 Reply Last reply
                            0
                            • bmannB Offline
                              bmannB Offline
                              bmann
                              wrote on last edited by
                              #42

                              The new thread is for funding packaging and support https://forum.cloudron.io/topic/11178/custom-cloudron-image-for-elasticsearch

                              I’m no good with Docker, but what I can do is pool funds and rally people to get it done.

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