// Module included in the following assemblies:
//
// * applications/creating-new-applications.adoc

[id="applications-create-using-cli-template-{context}"]
= Creating an application from a template

You can create an application from a previously stored template or from a
template file, by specifying the name of the template as an argument. For
example, you can store a sample application template and use it to create an
application.

Create an application from a stored template, for example:

----
$ oc create -f examples/sample-app/application-template-stibuild.json
$ oc new-app ruby-helloworld-sample
----

To directly use a template in your local file system, without first storing it
in {product-title}, use the `-f|--file` argument. For example:

----
$ oc new-app -f examples/sample-app/application-template-stibuild.json
----

== Template Parameters

When creating an application based on a template, use the
`-p|--param` argument to set parameter values that are defined by the template:

----
$ oc new-app ruby-helloworld-sample \
    -p ADMIN_USERNAME=admin -p ADMIN_PASSWORD=mypassword
----

You can store your parameters in a file, then use that file with
`--param-file` when instantiating a template. If you want to read the
parameters from standard input, use `--param-file=-`:

----
$ cat helloworld.params
ADMIN_USERNAME=admin
ADMIN_PASSWORD=mypassword
$ oc new-app ruby-helloworld-sample --param-file=helloworld.params
$ cat helloworld.params | oc new-app ruby-helloworld-sample --param-file=-
----
