Build your ideal application stack by combining powerful cloud services.
Real applications come in all shapes and sizes and have many moving pieces, so dotCloud lets you describe and build your application as a collection of services. By default, we start (instantiate) every service once. Then, when necessary you can start multiple instances (copies) of the same service. dotCloud runs each instance within a linux container, a special way make sure users' applications do not interfere with each other and to make sure no more memory is used than allocated.
dotcloud.ymlfile. For some services (all the databases, for instance), no build is needed, but for code services, this is when dependencies are are installed and your pre- and post-build scripts are run. Once the build is complete, the container is frozen and stored. A new container is started for each instance in your application, and the appropriate service's frozen build is installed. This is when your post-install script is run. Once your applications' new instances are running, they begin receiving new incoming network traffic. At this point the old version of your application is taken offline.
To avoid customers incurring unneeded costs, we initially limit vertical scaling to 4GB per service and horizontal scaling to 10 instances per service. While these sizes are sufficient for many small-to-mid-sized applications, they can be too limiting for larger applications, and so they can easily be lifted by custom request. If you need to go beyond the default limits, please get in touch.
First, you need to obtain an SSL certificate. Then, we need to deploy an SSL Load Balancer to handle your traffic.
Why do we need a dedicated SSL Load Balancer? Because each certificate needs to sit on its own IP address, and the only way on Amazon EC2 to obtain an IP address is to associate it with an instance—you cannot associate multiple IP addresses on a single instance.
Each SSL Load Balancer will require a minimum allocation of 160 MB of RAM, which will be added to your bill like any other dotCloud service. This will cost approximately $21.20 per month. If you wish to have you application highly available, you will need at least two of those SSL Load Balancers.
dotCloud will handle the setup, deployment, and monitoring of those SSL Load Balancers, in single and redundant modes. If you want to deploy multiple certificates (e.g. if you need SSL over multiple domains), you will need as many SSL Load Balancers.
Already have an SSL certificate? If you have your SSL certificate and want us to deploy one (or multiple) SSL Load Balancer for you, contact our support -- we will do the rest.
By default, each instance of a service is allocated default RAM values based on median measured use across all containers and ranges from 32MB to 192MB depending on the type of service.
Because your actual RAM requirements may vary based on how, exactly, you are using the service, you should check your newly created services' usage and adjust your allocations accordingly. First, check your RAM usage by running
dotcloud info, then use dotCloud's vertical scaling features to adjust your allocations.
To check the projected cost of a live-flavored application you can either login to the dashboard, or run
$ dotcloud info