Ephemeric cloud is designed to efficiently host lots of applications. There are some restrictions applied to the hosted Images though.
To create a new instance in Ephemeric Cloud user sends an HTTP request with an
Image Archive File which contains an application to run. Image Archive File is
zip archive with one Pharo image and complimenting files (sources, changes, file resources). System unarchives the file, searches for an .image file and run it with the following command line:
There are some restrictions applied on Image Archive file:
Image Archive file may contain some additional configuration files which have some special processing:
If you want some script executed upon Image start you may put
startup.st file in Image Archive File the same location as Pharo Image. This file may contain any smalltalk code like startup of services, and configuring database connections.
This file is very helpful to get Pharo Teapot applications run in Ephemeric cloud as Teapot is not auto-restarting on Image restart.
Ephemeric cloud provides an automation of environment configuration by using secure tunnels to external resources like databases. If system finds a
stunnel.conf file in Image Archive File it will automatically apply this configuration to instance. Read more in Configurable Cloud Environment
Random-generated hostname is automatically assigned to an instance upon publish. It is used as unique identifier of an instance in the cloud. Read-only property.
Date and time of initial instance creation. Read-only property.
trueif instance is actively running right now. Writable option. To activate instance you can change the value to
Additional hostname that can be assigned to instance by user. If set to the value assigned to another instance owned by the user then previous instance's alias is set to
nullvalue. Writable string property.
Proper way to re-map alias is to set a value to a new instance first and then stop previous instance by setting
User may use any hostname you want if it is pointing to ephemeric gate domain. You also may use any
*.swarm.pharocloud.comdomain for not to configure anything, just make sure alias is not claimed yet.
User can define an array of ports applications needs to expose. Ports are exposed on start and are mapped to a set of random ports on a node. To see the list of ports exposed see "mappedPorts" attribute.
A dictionary with a list of requested custom ports and actual public addresses for each of them
Last time instance was activated. Read-only date string property.
A descriptive name of the instance set by a user. Writable string property.