Allow custom ports
-
@nebulon said in Allow custom ports:
it does sound like you are looking for a generic app package, which is like a vm runtime to run any process/script/... which is uploaded into /app/data/.
This could be interpreted very broadly, therefore that's not the ask, however that is the end goal if you'd rather solve for that and include the ask in the OP.
Many ways to approach that, which we've covered previously with simple sysbox integration which enhances docker capabilities 10-fold with a single parameter on container launch, and a LEMP or even more generic stack container Cloudron app, all of which make the app backups import/export more functional and open up a new realm of not-yet-packaged app snapshots for more users.
-
R robi marked this topic as a question on
-
@robi Use case is clear. The manifest is currently quite static because the design goal is for pre-packaged apps where databases, ports, addons, dependencies, backups are known in advance. Having things optional and dynamic requires fundamental changes and it's a non-trivial change.
Anything is possible of course, so if many want this, we have to look into it.
-
@girish This is not about the manifest or port config there.
As stated in the OP, this is about the ability to modify the LAMP container based apache2 defined port in /etc/apache2, which is read-only and cannot be overridden with the config file in /app/data/apache.
This should be a simple change with an update to the LAMP package.
How do we do that?
P.S. I can make a separate Feature Request, if you wish, for the ability to better control the Nginx proxy port config for Cloudron apps, which would be a larger platform change (which still would not impact the app manifest).
-
-
@girish said in Allow custom ports:
The http port number that apache exposes is coded in the manifest. This requires the manifest to by dynamic.
Isn't the manifest info for the Cloudron side of things? Container and proxy config, etc.
Separate from the ability to manually reconfigure apache after the default install?
-
@robi we use such a thing in some apps like espocrm - https://git.cloudron.io/cloudron/espocrm-app/-/blob/master/apache/espocrm.conf?ref_type=heads#L20 . Many apps have nginx doing proxy pass in the container as well (taiga, pixelfed, onlyoffice, immich, sogo, jitsi etc).
-
@robi said in Allow custom ports:
Separate from the ability to manually reconfigure apache after the default install?
The container exposes a port, 80 in this case. This 80 is hardcoded as
httpPort
in the manifest.Thinking more, maybe what you mean is: disable apache altogether, I will run something else on port 80. If this is the case, you are right that manifest does not need to be changed.
I don't think we will support this though. It's not a normal flow to install LAMP and then disable apache as first step and run something else. This works for your specific situation only because you don't want a database or expose another port. What if I want postgres? Java? At this point, you will install everything into a data directory and run it from there. This is really not in the spirit of Cloudron.