---
title: Charmhub | Deploy Contrail OpenStack using Charmhub - The Open Operator Collection
description: Deploy the latest version of Contrail OpenStack on any cloud.
url: https://charmhub.io/juniper-os-software-contrail-openstack/configurations
---

# Contrail OpenStack

[Juniper Openstack Software](https://charmhub.io/publisher/juniper-os-software "View all packages from Juniper Openstack Software")

* [Juniper Openstack Software](https://charmhub.io/publisher/juniper-os-software "View all packages from Juniper Openstack Software")

Platform:

22.04

20.04

18.04

16.04

stable 50

```
juju deploy juniper-os-software-contrail-openstack
```

[Learn to deploy on juju >](https://juju.is/docs/juju/manage-applications)

* [container\_runtime](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#container_runtime)
* [docker-log-driver](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker-log-driver)
* [docker-log-options](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker-log-options)
* [docker-opts](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker-opts)
* [docker-password](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker-password)
* [docker-registry](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker-registry)
* [docker-registry-insecure](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker-registry-insecure)
* [docker-user](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker-user)
* [docker\_runtime](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker_runtime)
* [docker\_runtime\_key\_url](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker_runtime_key_url)
* [docker\_runtime\_package](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker_runtime_package)
* [docker\_runtime\_repo](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#docker_runtime_repo)
* [enable-metadata-server](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#enable-metadata-server)
* [heat-plugin-dirs](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#heat-plugin-dirs)
* [http\_proxy](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#http_proxy)
* [https\_proxy](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#https_proxy)
* [image-tag](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#image-tag)
* [no\_proxy](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#no_proxy)
* [use-internal-endpoints](https://charmhub.io/juniper-os-software-contrail-openstack/configurations#use-internal-endpoints)

[Learn about configurations >](https://juju.is/docs/juju/configuration#heading--application-configuration)

* container\_runtime | string

  Default: docker

  Container runtime valid values are "docker" and "containerd".
  Warning! The changes will not be applied after the package is installed.
* docker-log-driver | string

  Default: json-file

  A logging driver for the service’s containers.
* docker-log-options | string

  Default: max-size=20m max-file=5

  Logging options for the logging driver. Logging options available depend
  on which logging driver you use.
* docker-opts | string

  Extra options to pass to the Docker config file '/etc/docker/daemon.json' in json format.
  e.g. {"iptables": false, "insecure-registries": ["host2", "tungstenfabric", "host1"]}
* docker-password | string

  Password to the docker registry.
* docker-registry | string

  Default: opencontrailnightly

  URL of docker-registry
* docker-registry-insecure | boolean

  Is it docker-registry insecure and should docker be configured for it
* docker-user | string

  Login to the docker registry.
* docker\_runtime | string

  Default: upstream

  Docker runtime to install valid values are "upstream" (Docker PPA), "apt" (Ubuntu archive),
  "auto" (Ubuntu archive), or "custom" (must have set `docker_runtime_repo` URL,
  `docker_runtime_key_url` URL and `docker_runtime_package` name).
  Warning! The changes will not be applied after the package is installed.
* docker\_runtime\_key\_url | string

  Custom Docker repository validation key URL.
  Warning! The changes will not be applied after the package is installed.
* docker\_runtime\_package | string

  Custom Docker repository package name.
  Warning! The changes will not be applied after the package is installed.
* docker\_runtime\_repo | string

  Custom Docker repository, given in deb format. Use `{ARCH}` to determine architecture at runtime.
  Use `{CODE}` to set release codename.
  E.g. `deb [arch={ARCH}] https://download.docker.com/linux/ubuntu {CODE} stable`.
  Warning! The changes will not be applied after the package is installed.
* enable-metadata-server | boolean

  Default: True

  Configures metadata shared secret and tells nova to run a local instance
  of nova-api-metadata for serving metadata to VMs.
* heat-plugin-dirs | string

  Default: /usr/lib64/heat,/usr/lib/heat,/usr/lib/python2.7/dist-packages/vnc\_api/gen/heat/resources

  Set directories where heat will search for new resources.
* http\_proxy | string

  URL to use for HTTP\_PROXY to be used by Docker. Only useful in closed
  environments where a proxy is the only option for routing to the
  registry to pull images
* https\_proxy | string

  URL to use for HTTPS\_PROXY to be used by Docker. Only useful in closed
  environments where a proxy is the only option for routing to the
  registry to pull images
* image-tag | string

  Default: latest

  Tag of docker image.
* no\_proxy | string

  Comma-separated list of destinations (either domain names or IP
  addresses) that should be directly accessed, by opposition of going
  through the proxy defined above. Must be less than 2023 characters long
* use-internal-endpoints | boolean

  Openstack mostly defaults to using public endpoints for internal
  communication between services. If set to True this option will
  configure services to use internal endpoints where possible.
