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


    Cloudron Forum

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular

    Galacteek on Cloudron

    App Wishlist
    galacteek ipfs
    7
    47
    1474
    Loading More Posts
    • 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.
    • L
      LoudLemur last edited by

      Galacteek makes IPFS (Inter Planetary File System) easy. Its tools help you blog, run a Gemini, use IPNS (Inter Planetary Naming System) for content which is updated often, archive and much more.

      https://galacteek.gitlab.io/download/#v052

      There is a Docker:
      https://galacteek.gitlab.io/running-a-node/

      The user interface runs in a password protected, x11vnc service. IPFS is best run in some sort of container, such as Cloudron. (Pinning files effectively publishes one's IP address.)

      micmc C 2 Replies Last reply Reply Quote 4
      • micmc
        micmc @LoudLemur last edited by

        @loudlemur Sounds great, been wanted to get deeper into IPFS for a while so if implemented on CR that could be a nice start.
        +1 for me Cheers!


        https://marketingtechnology.agency
        For cutting edge web technologies

        L timconsidine 2 Replies Last reply Reply Quote 1
        • C
          cipres @LoudLemur last edited by

          @loudlemur @micmc Hello, galacteek author here. Recently learned about Cloudron, nice project !

          The docker image for galacteek is about 1Gb and that's a bit much, trying to find ways to reduce that to a minimum. If you have ideas on how to improve the docker image i'm quite interested, i'm not sure the x11vnc thing is ideal but it's worked better for me than the trick with the X11 socket.

          L 2 Replies Last reply Reply Quote 5
          • L
            LoudLemur @micmc last edited by LoudLemur

            @micmc The maintainer, @cipres, has a channel on LBRY and intends to start uploading some short, explainer videos on how to use some of Galacteek's many useful functions.

            https://odysee.com/@galacteek:9

            1 Reply Last reply Reply Quote 1
            • L
              LoudLemur @cipres last edited by LoudLemur

              @cipres I am not sure specifically, but there are some tips about reducing the number of layers, using a smaller base image size (Alpine) and a dockerignore file might help:

              https://learnk8s.io/blog/smaller-docker-images
              https://phoenixnap.com/kb/docker-image-size
              https://www.ianlewis.org/en/creating-smaller-docker-images

              It is great you are here, @cipres ! Please give this amazing developer a big welcome, Cloudron!

              1 Reply Last reply Reply Quote 2
              • timconsidine
                timconsidine App Dev @micmc last edited by

                @micmc : me too +1
                IPFS is interesting but my knowledge needs improving.
                Getting hands on is good for that

                1 Reply Last reply Reply Quote 2
                • girish
                  girish Staff last edited by

                  Welcome @cipres !

                  dapps is so cool! I am an ex-Qt developer, btw. I wrote among other things Qt style sheets, QCompleter, QLabel etc 🙂 Good to see QML going strong - a QML talk from my past

                  C L 2 Replies Last reply Reply Quote 5
                  • C
                    cipres @girish last edited by

                    @girish Thank you ! Cool, 2011 talk, i'll watch it.

                    Yeah i think writing dapps in QML has some potential (or it could be a complete dead-end :D), i wrote the necessary interfaces so that from the QML code you can use IPFS functions like pubsub, to broadcast messages efficiently to all the peers. Also it integrates with QtWebEngine so you can load a JS-based ipfs page from your dapp ..

                    Most people working with ipfs write dapps in NodeJS, it's the classic approach. Ideally we could mix both ... but QML won't let you do async so i write the complex code in python and call that from the QML side.

                    1 Reply Last reply Reply Quote 1
                    • L
                      LoudLemur @girish last edited by

                      @girish Qt is so beautiful! 😊

                      micmc 1 Reply Last reply Reply Quote 1
                      • micmc
                        micmc @LoudLemur last edited by

                        @loudlemur said in Galacteek on Cloudron:

                        @girish Qt is so beautiful! 😊

                        Indeed! 😆


                        https://marketingtechnology.agency
                        For cutting edge web technologies

                        1 Reply Last reply Reply Quote 0
                        • C
                          cipres last edited by cipres

                          Some documentation on how to use SparQL and IPFS from a QML dapp

                          https://galacteek.gitlab.io/docs/dapps/sparql/

                          https://galacteek.gitlab.io/docs/dapps/ipfs

                          1 Reply Last reply Reply Quote 1
                          • C
                            cipres last edited by

                            New shapshots and docker image. Now when you search for things on the dweb it's automatically cached as RDF so it's way faster to lookup things later on even being offline.

                            There's also a bash script now to run the latest AppImage snapshot automatically:

                            curl -L https://galacteek.gitlab.io/galacteek-snapshot-install.sh | bash
                            
                            L 1 Reply Last reply Reply Quote 1
                            • L
                              LoudLemur @cipres last edited by

                              @cipres Thank you!

                              I hope that Galacteek can be packaged for Cloudron. You have kindly created a fresh Docker. Perhaps somebody will now volunteer to package it.

                              C 1 Reply Last reply Reply Quote 0
                              • C
                                cipres @LoudLemur last edited by

                                @LoudLemur Managed to get the Docker image down to ~820Mb, based on python:3.7-slim. It can be reduced even more but not that much, i'm surprised by the space the xorg packages take on a debian ...

                                L 1 Reply Last reply Reply Quote 2
                                • L
                                  LoudLemur @cipres last edited by

                                  @cipres Well done! Could somebody take a crack at putting this on Cloudron?

                                  C 1 Reply Last reply Reply Quote 0
                                  • C
                                    cipres @LoudLemur last edited by

                                    @LoudLemur I've read the packaging tutorial, i can write and publish the CloudronManifest.json file in the galacteek repo if that helps. It seems that the docker image url/ref is not specified in the manifest but rather that you need to pass it when you run "cloudron install --image ..." ?

                                    timconsidine 1 Reply Last reply Reply Quote 1
                                    • timconsidine
                                      timconsidine App Dev @cipres last edited by timconsidine

                                      @cipres
                                      Yes you need :

                                      • CloudronManifest.json ( can be simple )
                                      • Dockerfile
                                      • source code

                                      Then :

                                      • docker build -t <reponame>/<appname>:<tag> .
                                      • docker push <reponame>/<appname>:<tag>
                                      • cloudron install --image <reponame>/<appname>:<tag>
                                      C 1 Reply Last reply Reply Quote 1
                                      • C
                                        cipres @timconsidine last edited by

                                        @timconsidine Thank you ! The docker image is already automatically built from gitlab ci and pushed to gitlab's container registry here:

                                        registry.gitlab.com/galacteek/galacteek:pimp-my-dweb-latest-x11vnc

                                        So apart from the manifest there isn't much else that needs to be done it seems ?

                                        timconsidine 1 Reply Last reply Reply Quote 0
                                        • timconsidine
                                          timconsidine App Dev @cipres last edited by timconsidine

                                          @cipres generally nothing else needed BUT I think the Dockerfile may need to be custom to Cloudron. Depends on how complex the Dockerfile is.

                                          • Generally advised to use latest base build
                                            FROM cloudron/base:3.2.0@sha256:ba1d566164a67c266782545ea9809dc611c4152e27686fd14060332dd88263ea
                                            Although I am not entirely sure about whether this is essential.

                                          • May need to consider passing some Cloudron-specific variables for DB connection etc.

                                          • Generally Cloudron deployments are 'static' in terms of system code under /app/code and changeable config and data under /app/data. But again not sure if this is essential.

                                          Someone with more technical knowledge and better packaging experience may be able to explain / advise better than me.

                                          C 1 Reply Last reply Reply Quote 0
                                          • C
                                            cipres @timconsidine last edited by

                                            @timconsidine Thanks a lot for your help.The Dockerfile is pretty simple. I don't want to have to maintain 2 different docker images.

                                            Given that the password to access the UI via VNC is printed on the console when the container is started, won't be that be a problem when running it from cloudron ?

                                            timconsidine 3 Replies Last reply Reply Quote 0
                                            • timconsidine
                                              timconsidine App Dev @cipres last edited by timconsidine

                                              @cipres Understood about different images
                                              All you can do is try ! Maybe stock image deploys fine on Cloudron

                                              About password, it is possible to view the runtime logs on install.
                                              You just need to tell people to do that.

                                              I can try if you want.
                                              But http://registry.gitlab.com/galacteek/galacteek:pimp-my-dweb-latest-x11vnc comes up as 404 (I will try again)

                                              I don't know how VNC is going to work, but would be interested to find out.

                                              timconsidine 1 Reply Last reply Reply Quote 0
                                              • timconsidine
                                                timconsidine App Dev @cipres last edited by

                                                @cipres if you have a stock image, I guess it could just be

                                                cloudron install --image http://registry.gitlab.com/galacteek/galacteek:pimp-my-dweb-latest-x11vnc

                                                ... providing there is a CloudronManifest.json
                                                Have you made this yet ? Can you share it ?

                                                1 Reply Last reply Reply Quote 0
                                                • timconsidine
                                                  timconsidine App Dev @timconsidine last edited by timconsidine

                                                  @timconsidine said in Galacteek on Cloudron:

                                                  @cipres Understood about different images
                                                  All you can do is try ! Maybe stock image deploys fine on Cloudron

                                                  I tried.
                                                  But got this :

                                                  $ cloudron install --image http://registry.gitlab.com/galacteek/galacteek:pimp-my-dweb-latest-x11vnc
                                                  Location: 3.appx.uk    
                                                  Failed to install app: 400 message: Manifest error: Invalid docker image name
                                                  

                                                  Maybe related to that 404 I mentioned
                                                  Or something else I don't understand !

                                                  EDIT : I don't understand about IPFS or what Galacteek is doing : sorry

                                                  C 1 Reply Last reply Reply Quote 0
                                                  • timconsidine
                                                    timconsidine App Dev @cipres last edited by

                                                    @cipres Even though I little idea about what I am building, I am trying to build a Cloudron Dockerfile
                                                    Will report back.

                                                    timconsidine 1 Reply Last reply Reply Quote 0
                                                    • timconsidine
                                                      timconsidine App Dev @timconsidine last edited by timconsidine

                                                      @cipres
                                                      I am getting errors

                                                      COPY docs /usr/local/galacteek/docs/
                                                      I think this should be COPY galacteek/docs /usr/local/galacteek/docs/

                                                      More seriously I am getting :

                                                      #10 40.69         import cryptography
                                                      #10 40.69     ModuleNotFoundError: No module named 'cryptography'
                                                      #10 40.69     ----------------------------------------
                                                      #10 40.93 ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
                                                      

                                                      I tried to add cryptography to requirements.txt but it didn't work
                                                      Exploring ...

                                                      EDIT : can't get past

                                                      #10 1.621 Collecting cryptography                                                                                            
                                                      #10 1.716   Downloading cryptography-36.0.1-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.8 MB)
                                                      #10 3.071 ERROR: Could not find a version that satisfies the requirement pip3 (from versions: none)
                                                      #10 3.077 ERROR: No matching distribution found for pip3
                                                      

                                                      Blocked

                                                      C 1 Reply Last reply Reply Quote 0
                                                      • C
                                                        cipres @timconsidine last edited by

                                                        Why do you add http:// ? I think that's the issue. This works for me.

                                                        docker pull registry.gitlab.com/galacteek/galacteek:pimp-my-dweb-latest-x11vnc
                                                        

                                                        I don't have cloudron installed yet. I wrote the CloudronManifest.json, will push it soon. Should the CloudronManifest.json file also be inside the docker container's filesystem ?

                                                        timconsidine 1 Reply Last reply Reply Quote 0
                                                        • C
                                                          cipres @timconsidine last edited by

                                                          @timconsidine The Dockerfile for the x11vnc image is called Dockerfile.debian.x11vnc in the pimp-my-dweb branch.

                                                          docker build -f Dockerfile.debian.x11vnc  .
                                                          

                                                          But no need to build it, better use the available image in the gitlab registry.

                                                          1 Reply Last reply Reply Quote 0
                                                          • timconsidine
                                                            timconsidine App Dev @cipres last edited by

                                                            @cipres I just clicked the link. Probably shouldn't have done. Ignore that.

                                                            I tried building with recommended cloudron base image but that generated above errors. Maybe I was trying to be too clever.

                                                            Tried again with your base image in your Dockerfile.
                                                            That's building now better but still run into errors.
                                                            Will report back.

                                                            CloudronManifest.json just need to be in project directory.
                                                            Doesn't need adding, just accessible when running cloudron install.
                                                            Don't worry about sharing for now.

                                                            Rather than me fill this topic with dev issues, maybe we should take this to chat ?

                                                            C 1 Reply Last reply Reply Quote 0
                                                            • C
                                                              cipres @timconsidine last edited by

                                                              @timconsidine Yes better in the chat, thanks.

                                                              L 1 Reply Last reply Reply Quote 0
                                                              • L
                                                                LoudLemur @cipres last edited by

                                                                @cipres @timconsidine - you people are heroes!

                                                                This is so powerful. I can't wait to try this. Please let us know how to get it going if you get it ready.

                                                                timconsidine C 2 Replies Last reply Reply Quote 0
                                                                • timconsidine
                                                                  timconsidine App Dev @LoudLemur last edited by

                                                                  @LoudLemur said in Galacteek on Cloudron:

                                                                  @cipres @timconsidine - you people are heroes!

                                                                  @cipres might be
                                                                  I'm just a blundering monkey

                                                                  I'm not convinced it will be possible to get a working build, but we're certainly trying

                                                                  1 Reply Last reply Reply Quote 0
                                                                  • C
                                                                    cipres @LoudLemur last edited by

                                                                    @LoudLemur @timconsidine adapted the Dockerfile for Cloudron, i hope we can fix the remaining issues.

                                                                    L 1 Reply Last reply Reply Quote 1
                                                                    • L
                                                                      LoudLemur @cipres last edited by

                                                                      @cipres Great! What is the latest on progress here? Has anybody managed to deploy Galacteek on Cloudron yet?

                                                                      timconsidine 1 Reply Last reply Reply Quote 0
                                                                      • timconsidine
                                                                        timconsidine App Dev @LoudLemur last edited by

                                                                        @LoudLemur I am finishing packaging it. We're almost there, but resolving some issues.

                                                                        To be honest @LoudLemur I am not sure that performance as a Cloudron app will be enough for most people. Mostly because it is quite demanding in terms of memory (so if your Cloudron instance is running lots of apps or has limited RAM for the VPS), it will probably seem quite slow.

                                                                        In addition it will depend where your Cloudron server is located. If it is a VPS in the cloud, which is probably true for 90% of people (??), you will need to use VNC from your local device to the server, over a SSH tunnel. That is going to reduce speed and increase screen refresh/lag times.

                                                                        If your Cloudron server is on your home network, you won't need a ssh tunnel for the VNC ..... but it will still be VNC speeds for screen activity.

                                                                        I downloaded the Galacteek app for Mac, and even running locally it is quite demanding (mind you, I do usually have a ton of apps running locally).

                                                                        I am very interested in IPFS and using this packaging project to learn about the subject (and to advance my packaging skills). But I have to be honest and say that I am very likely to not use a Cloudron-installation of Galacteek, but a native app. So please be sure you check out those options also.

                                                                        I think for Coudron, we may need some other kind of IPFS server app. But I'm still learning about the subject.

                                                                        @cipres, if I said something not true in the above, please feel free to correct me ! Actually no, don't feel free : PLEASE correct me.

                                                                        C doodlemania2 2 Replies Last reply Reply Quote 1
                                                                        • C
                                                                          cipres @timconsidine last edited by

                                                                          @timconsidine Everything you said is very accurate. The RAM requirements have to be considered, it will likely be an issue on a VPS. Thanks again for doing the work on the packaging, it's never lost ..

                                                                          The primary use case on cloudron i think wouldn't be to access the UI via VNC (although you still could) but to act as a node on the network to cache linked data. galacteek uses RDF and SparQL (over libp2p tunnels, so it's fully P2P) to exchange linked data between peers. This works pretty well but needs some optimization (synchronization is slow).

                                                                          I think it's best to wait a bit to see how it can best be deployed, there's no rush.

                                                                          1 Reply Last reply Reply Quote 0
                                                                          • L
                                                                            LoudLemur @cipres last edited by

                                                                            @cipres I don't know if ipfs-lite might be usable and able to reduce the size:

                                                                            https://github.com/hsanjuan/ipfs-lite

                                                                            Also, there is an IPFS Docker registry
                                                                            https://github.com/ipdr/ipdr

                                                                            C 1 Reply Last reply Reply Quote 0
                                                                            • doodlemania2
                                                                              doodlemania2 App Dev @timconsidine last edited by

                                                                              @timconsidine can you share your packaging? happy to look at it as well

                                                                              timconsidine 2 Replies Last reply Reply Quote 1
                                                                              • timconsidine
                                                                                timconsidine App Dev @doodlemania2 last edited by

                                                                                @doodlemania2 : Sure.
                                                                                I got it as far as my competencies allowed before the Ukraine war started on 24th Feb
                                                                                Haven't touched it since then. In Warsaw for 2-3 weeks trying to get family out and get visas.
                                                                                I will try to find the code, but I am not sure I have access on this laptop. Will check.

                                                                                I'm still bit unsure whether it is a good fit for Cloudron, as per messages above. But maybe your better skills can make it so !

                                                                                1 Reply Last reply Reply Quote 0
                                                                                • timconsidine
                                                                                  timconsidine App Dev @doodlemania2 last edited by

                                                                                  @doodlemania2 I seem to have been a bit more efficient than I normally am.
                                                                                  There is a repo here : https://git.cloudron.io/timconsidine/cloudron-galacteek
                                                                                  2 issues :

                                                                                  • it's not loading for me at the moment, but looks like there are some files there ! Maybe it will load for you.
                                                                                  • I am not convinced it's the absolute latest version, but maybe that doesn't matter, and you can pick up from a not-quite-latest commit.

                                                                                  I will try to get remote access to the computer in office to check if any o/s commits. But I ran out the door when leaving, so not sure what devices I left on/connected.

                                                                                  doodlemania2 1 Reply Last reply Reply Quote 3
                                                                                  • doodlemania2
                                                                                    doodlemania2 App Dev @timconsidine last edited by

                                                                                    @timconsidine Not a problem and please take good care of your family! Will look as soon as I can.

                                                                                    1 Reply Last reply Reply Quote 3
                                                                                    • C
                                                                                      cipres @LoudLemur last edited by

                                                                                      @LoudLemur Sorry bit of a late reply .. No, go-ipfs really doesn't take much disk space that's not a problem. ipfs-lite only provides the strict minimum (great project), but galacteek needs and uses the whole ipfs stack, things like streams and pubsub.

                                                                                      A flatpak repository is now available. I'll integrate tim's work in the main repo but i can't test it (don't have cloudron).

                                                                                      @timconsidine hope you're ok, thanks again for the work you did on this

                                                                                      timconsidine 1 Reply Last reply Reply Quote 2
                                                                                      • timconsidine
                                                                                        timconsidine App Dev @cipres last edited by

                                                                                        @cipres thank you, bit of a tough time.
                                                                                        If you need me to test something, happy to do so.

                                                                                        C 2 Replies Last reply Reply Quote 0
                                                                                        • C
                                                                                          cipres @timconsidine last edited by

                                                                                          @timconsidine Built the docker image, all good. Only thing i've changed .. i'm using "python -m http.server 8000" instead of the server.js script to run the health check service. That got me wondering how the "node /app/code/server.js" command could work because nodejs isn't being installed anywhere ?

                                                                                          One question: does the Dockerfile for cloudron need to be named "Dockerfile" ? Or is it allowed to have it named "Dockerfile.cloudron" for example. If not, that's fine i'll symlink it.

                                                                                          1 Reply Last reply Reply Quote 0
                                                                                          • C
                                                                                            cipres @timconsidine last edited by

                                                                                            @timconsidine Just pushed the code in the pimp-my-dweb branch (see Dockerfile.cloudron). Tried the docker image, it works, and the healthcheck on port 8000 should work. Had to fix a few things, /app/code/bin wasn't in PATH, it couldn't find go-ipfs ..

                                                                                            robi 1 Reply Last reply Reply Quote 0
                                                                                            • robi
                                                                                              robi @cipres last edited by

                                                                                              @staff is there a way to use the demo cloudron for testing new apps?

                                                                                              Life of Advanced Technology

                                                                                              girish 1 Reply Last reply Reply Quote 1
                                                                                              • girish
                                                                                                girish Staff @robi last edited by

                                                                                                @robi Yes, sure, install away. Are you asking for a way to make sure the app does not get uninstalled by someone else?

                                                                                                robi 1 Reply Last reply Reply Quote 0
                                                                                                • robi
                                                                                                  robi @girish last edited by

                                                                                                  @girish wasn't sure about -cli auth and apps not in the app store or 3rd party docker repos.

                                                                                                  Life of Advanced Technology

                                                                                                  1 Reply Last reply Reply Quote 0
                                                                                                  • First post
                                                                                                    Last post
                                                                                                  Powered by NodeBB