---
title: Charmhub | Deploy WordPress using Charmhub - The Open Operator Collection
description: Deploy the latest version of WordPress as a Kubernetes Operator on any
  cloud.
url: https://charmhub.io/wordpress-k8s/configurations
---

# WordPress

[Canonical IS DevOps](https://charmhub.io/publisher/canonical-is-devops "View all packages from Canonical IS DevOps")

* [Canonical IS DevOps](https://charmhub.io/publisher/canonical-is-devops "View all packages from Canonical IS DevOps")

Platform:

stable 24deb36c

```
juju deploy wordpress-k8s
```

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

* [blog\_hostname](https://charmhub.io/wordpress-k8s/configurations#blog_hostname)
* [health\_check\_timeout\_seconds](https://charmhub.io/wordpress-k8s/configurations#health_check_timeout_seconds)
* [initial\_settings](https://charmhub.io/wordpress-k8s/configurations#initial_settings)
* [max\_execution\_time](https://charmhub.io/wordpress-k8s/configurations#max_execution_time)
* [max\_input\_time](https://charmhub.io/wordpress-k8s/configurations#max_input_time)
* [plugins](https://charmhub.io/wordpress-k8s/configurations#plugins)
* [post\_max\_size](https://charmhub.io/wordpress-k8s/configurations#post_max_size)
* [themes](https://charmhub.io/wordpress-k8s/configurations#themes)
* [upload\_max\_filesize](https://charmhub.io/wordpress-k8s/configurations#upload_max_filesize)
* [use\_nginx\_ingress\_modsec](https://charmhub.io/wordpress-k8s/configurations#use_nginx_ingress_modsec)
* [wp\_plugin\_akismet\_key](https://charmhub.io/wordpress-k8s/configurations#wp_plugin_akismet_key)
* [wp\_plugin\_openid\_team\_map](https://charmhub.io/wordpress-k8s/configurations#wp_plugin_openid_team_map)
* [wp\_plugin\_openstack-objectstorage\_config](https://charmhub.io/wordpress-k8s/configurations#wp_plugin_openstack-objectstorage_config)

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

* blog\_hostname | string

  Hostname for accessing WordPress, if ingress relation is active. Defaults to the application name.
* health\_check\_timeout\_seconds | int

  Default: 5

  This setting specifies the duration, in seconds, that pebble will wait for a WordPress health check to complete before timing out. Use this setting to adjust the timeout based on expected system performance and conditions
* initial\_settings | string

  Default: user\_name: admin
  admin\_email: devnull@example.com

  YAML formatted WordPress configuration. It is used only during initial deployment. Changing it at later stage has no effect. If set to non empty string required keys are:

  ```
  user_name: admin_username
  admin_email: name@example.com
  ```

  Optionally you can also provide

  ```
  admin_password: <secret>  # autogenerated if not set
  ```

  If admin\_password is not provided it will be automatically generated and stored on the operator pod in the /root directory.
* max\_execution\_time | int

  Default: 30

  This sets the maximum time in seconds a script is allowed to run before it is terminated by the parser. https://www.php.net/manual/en/info.configuration.php#ini.max-execution-time
* max\_input\_time | int

  Default: -1

  This sets the maximum time in seconds a script is allowed to parse input data, like POST and GET. https://www.php.net/manual/en/info.configuration.php#ini.max-input-time
* plugins | string

  Plugin slugs of plugins to be installed, separated by comma. Including or excluding
  a default plugin here will have no effect.
* post\_max\_size | string

  Default: 8M

  Sets max size of post data allowed. https://www.php.net/manual/en/ini.core.php#ini.post-max-size
* themes | string

  Theme slugs of themes to be installed, separated by comma. Including or excluding
  a default theme here will have no effect.
* upload\_max\_filesize | string

  Default: 2M

  The maximum size of an uploaded file. https://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize
* use\_nginx\_ingress\_modsec | boolean

  Default: True

  Boolean value denoting whether modsec based WAF should be enabled. Applied if ingress relation is available.
* wp\_plugin\_akismet\_key | string

  Akismet key. If empty, akismet will not be automatically enabled
* wp\_plugin\_openid\_team\_map | string

  Launchpad teams and corresponding access levels, for use with the openid plugins.
  Valid WordPress access levels are: administrator, editor, author, contributor, subscriber
  If empty, OpenID will not be enabled.
  Format is key=value pairs (where key is the Launchpad team, and value is the WordPress role) - commas separate multiple pairs.
  Example format:

  ```
  "site-sysadmins=administrator,site-editors=editor,site-executives=editor"
  ```
* wp\_plugin\_openstack-objectstorage\_config | string

  YAML dictionary with keys named after WordPress settings and the desired values.
  Please note that the settings will be reset to values provided every time hooks run.
  It is important to note that for multi-unit deployments, the `openstack-objectstorage-k8s`
  plugin must be enabled to sync data across WordPress applications. Furthermore, object ACLs
  must be configured beforehand to be accessible by public. See openstack
  documentation(https://docs.openstack.org/swift/latest/overview\_acl.html) for more detail.

  ```
  auth-url: authentication URL to openstack. Example: http://10.100.115.2/identity/v3
  bucket: name of the bucket for WordPress. Example: WordPress
  copy-to-swift: Value ‘1’ or ‘0’ denoting true, false respectively on whether to
    copy the local data to swift. Example: 1
  domain: OpenStack Project domain ID. Example: Default
  object-prefix: Object path prefix. Example: wp-content/uploads/
  password: OpenStack password. Example: openstack_secret_password
  region: OpenStack region. Example: RegionOne
  remove-local-file: Value ‘1’ or ‘0’ denoting true, false respectively on whether to remove local
    file. Example: 0
  serve-from-swift: Value ‘1’ or ‘0’ denoting true, false respectively on whether to serve the
    contents file directly from swift. If set, media URLs to path $WORDPRESS_IP/wp-content/uploads/
    will be proxied to $OPENSTACK_IP/{account}/{container}/{object-prefix}/. Example: 1
  swift-url: OpenStack Swift URL.
    example: http://10.100.115.2:8080/v3/AUTH_1d449b4237d3499dabd95210c33ca150
  tenant: OpenStack tenant name. Example: demo
  username: OpenStack username. Example: demo
  ```
