SFTP Missing for some apps?
-
@echokos have you checked https://cloudron.io/documentation/apps/ghost/ ?
Normally you can use the Web Terminal to edit stuff in /app/data
https://cloudron.io/documentation/apps/#web-terminal -
Yes it is intentional to not have sftp for all apps enabled. Generally we prefer using the app directly to get data in as many apps require an explicit restart to pickup changed or new data as well as often the file permissions are not correct if added behind their back. Currently pushing data into apps from the host works, but since it is not the intended use-case we haven't provided an easy solution there.
-
@jdaviescoates I have seen this, however there is no /app/data/content directory. I ended up finding it within /home/yellowtent/appsdata/{appid}/data/content.
To @nubulon's point, since there's a need to restart the app (in ghost's case at least) on any edit of a theme or routes file, it probably makes more sense to do it from within the upload/download of the admin. Just takes much longer. -
@nebulon I'm a new Cloudron user and have installed a couple of applications which I like a lot, RocketChat and InvoiceNinja. The DigitalOcean integrated DNS setup is amazingly smooth. Congratulations Team Cloudron!
So far I haven't needed to get into the files for RocketChat as the admin preferences are extensive.
On the other hand, there's some CSS issues with InvoiceNinja I'd like to fix as well as edit a few variables (not available in the deliberately limited preferences of InvoiceNinja: developer Hillel Coren asks us to edit .env himself) to disable Google Maps API for instance. In case anyone is wondering I've already paid for the White Label for InvoiceNinja so these changes I'm asking for are only available via SFTP.
It's frustrating Cloudron does not offer SFTP as it basically means that for apps which a company intends to take into production we'll have to create separate servers and installs for long term use. Which basically takes us back to too much maintenance and overhead to run FOSS apps. Which in term means smaller userbase for apps and people like me who like to regularly contribute/donate to FOSS are not involved with as many apps.
Of course, there's still value for testing in Cloudron without per app SFTP: it's really cool that these applications install and basically work out of the box, instead of testing with a broken Scriptaculous install or facing half a day fiddling around with database installs and app keys.
From what I can see, the recommendation is to go in as root to make these changes. Running around as root via the command line to change .css files seems a very top heavy way to work.
-
@foliovision Welcome onboard and thanks for the kind words!
I think you might have misunderstood the need for SFTP support in Cloudron. In Cloudron, each app is run as a container and has it's own filesystem. You access the app's file system via the Web Terminal. In your case, when you want to access the env file of InvoiceNinja, all you have to do is open up the Web Terminal for InvoiceNinja and then edit
/app/data/.env
using your favorite editor (vim/nano).We tend to think of SFTP support (in Cloudron) as a way to constantly edit files a lot. This is usually just apps that are just hosting code like the LAMP apps and the Unmanaged WordPress app. It would be unwieldy to edit these files non-stop in a browser terminal window. In contrast, for most of the other apps, it's just a one time edit of config file (and only by the admin).
-
@girish said in SFTP Missing for some apps?:
all you have to do is open up the Web Terminal for InvoiceNinja and then edit /app/data/.env using your favorite editor (vim/nano).
Hi Girish, Thanks for your quick answer. I did get as far as trying to edit the .env file with Vim in the Cloudron terminal. I think specifically with the .env file in Invoice Ninja that it's read only in Cloudron. Let me know if I'm wrong.
In terms of SFTP access, I'd really like to be able to make some manual adjustments to the back end CSS of Invoice Ninja for usability. @nebulon suggested that I suggest some changes to Invoice Ninja on their github repository to encourage them to include the code in production. I'm not sure how Hillel Coren (lead developer) will be to do so though as he's move on from version 4 and is fully engaged in a huge rewrite for mobile in version 5 (not sure how keen users will be to do their invoicing from a mobile device on a mobile screen so it seems a strange direction).
For those reading this thread, my conversation with nebulon turned up another very interesting option. Downloading a copy of the Cloudron version of an app, making changes locally and then replacing the Cloudron code with the local version. Hopefully either Girish or Nebulon will post a link to additional documentation and a better technical description of how to do this.
-
@foliovision said in SFTP Missing for some apps?:
Hi Girish, Thanks for your quick answer. I did get as far as trying to edit the .env file with Vim in the Cloudron terminal. I think specifically with the .env file in Invoice Ninja that it's read only in Cloudron. Let me know if I'm wrong.
Yes, the file will be editable. In fact, we pushed an update yesterday to move the env file location to
/app/data/env
(instead of/app/data/.env
). Can you please check again if it's writable and report here? Note you will have to restart the app (Console -> Restart) after making changes.