| copyright |
|
||
|---|---|---|---|
| lastupdated | 2017-12-14 |
{:shortdesc: .shortdesc} {:new_window: target="_blank"}
{: #creating_cloud_foundry_apps}
With {{site.data.keyword.Bluemix}}, you can create your app in the {{site.data.keyword.Bluemix_notm}} console. Then, you can decide to continue to use the console, use the cf command line interface, or use {{site.data.keyword.jazzhub_title}} to develop, track, plan, and deploy your app. {:shortdesc}
When you create an app in {{site.data.keyword.Bluemix_notm}}, you can begin with a starter. A starter is a template that includes predefined services and application code that is configured with a particular buildpack. There are two types of starters: boilerplates and runtimes.
A boilerplate is a container for an application and its associated runtime environment and predefined services for a particular domain. For example, the Mobile Cloud boilerplate includes a Node.js runtime, as well as the Mobile Data, Mobile Application Security, and Push services. It also includes an SDK and sample applications to get started developing mobile apps that access these services.
A runtime is the set of resources that is used to run an application. {{site.data.keyword.Bluemix_notm}} provides runtime environments as containers for different types of applications. The runtime environments are integrated as buildpacks into {{site.data.keyword.Bluemix_notm}}, are automatically configured for use, and require little to no maintenance.
To get started creating your application, take the following steps:
- Click Catalog in the IBM Cloud toolbar.
- Click Cloud Foundry Apps and choose a runtime. Follow the guided experience to specify a name, and select how you want to code. Click Create.
- When you are finished with the guided experience, click Overview.
- You can add a service to your app by clicking Create connection on the app Overview in the dashboard. Browse and select services from the catalog, or, scroll to the end of the catalog and click {{site.data.keyword.Bluemix_notm}} Experimental Services to browse experimental services. Or, you can use the cf command line interface. See Options for working with apps.
- On the Overview page, scroll to the "Continuous delivery" card and click View toolchain. Your app's source will be saved in a repo that is hosted on Bluemix. An open toolchain that uses that repo and a delivery pipeline to develop and deploy your app is also created. For more information about the Continuous Delivery service, see Getting started with Continuous Delivery.
Note: If a service that you bind to an app crashes, the app might stop running or have errors. {{site.data.keyword.Bluemix_notm}} does not automatically restart the app to recover from these problems. Consider coding your app to identify and recover from outages, exceptions, and connection failures. See the Apps are not automatically restarted troubleshooting topic for more information.
After your app is created, you have a few options for continuing to add services to your app and to build and deploy your app:
- cf command line interface
- Use the cf command line interface to update your application, create a service instance, or bind the service to your application. You can also use the cloud-cli command line interface to create, update, and delete service offerings.
- {{site.data.keyword.Bluemix_notm}} user interface
- Use the {{site.data.keyword.Bluemix_notm}} user interface to build your application, including picking which services and runtimes to combine to solve your business problem.
- {{site.data.keyword.contdelivery_full}}
- Use {{site.data.keyword.contdelivery_short}} to automate builds, unit tests, deployments, and more. Edit and push code through the rich web based IDE. Create toolchains to enable tool integrations that support your development, deployment, and operation tasks. The Continuous Delivery service includes Delivery Pipeline, Eclipse Orion Web IDE, and Git Repos and Issue Tracking. For more information, see Getting started with Continuous Delivery.
Use the following tips while developing your web apps:
- Persistence
- Don't specify any local storage for your applications. Each instance of your application, even if only one instance is running, can be restarted or moved to a different virtual machine at any time, typically for load balancing. Anything stored in local storage is erased when the application is moved or deleted. Use one of the {{site.data.keyword.Bluemix_notm}} data store services for persistence.
- Resource limits
- Be aware of limits on the quantities of resources that a trial account can use. The limits are as follows:
Table 1. {{site.data.keyword.Bluemix_notm}} resource limits for a trial account Resource type Quantity limit Number of services that are used across all apps 10 Memory used across all apps 2 G Number of routes 500