Web Service Configuration

Introduction

The web service embeds and serves the static files for the Infinite Scale Web Client. See the ownCloud Web description for more details.

Note that clients will respond with a connection error if the web service is not available.

The web service also provides a minimal API for branding functionality like changing the logo shown.

Default Values

  • Web listens on port 9100 by default.

Custom Compiled Web Assets

If you want to use your custom compiled web client assets instead of the embedded ones, then you can do that by setting the WEB_ASSET_PATH variable to point to your compiled files. See ownCloud Web / Getting Started and ownCloud Web / Setup with oCIS in the developer documentation for more details.

Configuration

Environment Variables

The web service is configured via the following environment variables:

  • latest

  • 2.0.0

Environment variables for the web service
Name Type Default Value Description

OCIS_TRACING_ENABLED
WEB_TRACING_ENABLED

bool

false

Activates tracing.

OCIS_TRACING_TYPE
WEB_TRACING_TYPE

string

The type of tracing. Defaults to "", which is the same as "jaeger". Allowed tracing types are "jaeger" and "" as of now.

OCIS_TRACING_ENDPOINT
WEB_TRACING_ENDPOINT

string

The endpoint of the tracing agent.

OCIS_TRACING_COLLECTOR
WEB_TRACING_COLLECTOR

string

The HTTP endpoint for sending spans directly to a collector, i.e. http://jaeger-collector:14268/api/traces. Only used if the tracing endpoint is unset.

OCIS_LOG_LEVEL
WEB_LOG_LEVEL

string

The log level. Valid values are: "panic", "fatal", "error", "warn", "info", "debug", "trace".

OCIS_LOG_PRETTY
WEB_LOG_PRETTY

bool

false

Activates pretty log output.

OCIS_LOG_COLOR
WEB_LOG_COLOR

bool

false

Activates colorized log output.

OCIS_LOG_FILE
WEB_LOG_FILE

string

The path to the log file. Activates logging to this file if set.

WEB_DEBUG_ADDR

string

127.0.0.1:9104

Bind address of the debug server, where metrics, health, config and debug endpoints will be exposed.

WEB_DEBUG_TOKEN

string

Token to secure the metrics endpoint.

WEB_DEBUG_PPROF

bool

false

Enables pprof, which can be used for profiling.

WEB_DEBUG_ZPAGES

bool

false

Enables zpages, which can be used for collecting and viewing in-memory traces.

WEB_HTTP_ADDR

string

127.0.0.1:9100

The bind address of the HTTP service.

OCIS_HTTP_TLS_ENABLED

bool

false

Activates TLS for the http based services using the server certifcate and key configured via OCIS_HTTP_TLS_CERTIFICATE and OCIS_HTTP_TLS_KEY. If OCIS_HTTP_TLS_CERTIFICATE is not set a temporary server certificate is generated - to be used with PROXY_INSECURE_BACKEND=true.

OCIS_HTTP_TLS_CERTIFICATE

string

Path/File name of the TLS server certificate (in PEM format) for the http services.

OCIS_HTTP_TLS_KEY

string

Path/File name for the TLS certificate key (in PEM format) for the server certificate to use for the http services.

WEB_HTTP_ROOT

string

/

Subdirectory that serves as the root for this HTTP service.

WEB_CACHE_TTL

int

604800

Cache policy in seconds for ownCloud Web assets.

WEB_ASSET_PATH

string

~/.ocis/web/assets

Serve ownCloud Web assets from a path on the filesystem instead of the builtin assets.

WEB_UI_CONFIG

string

Read the ownCloud Web configuration from this file.

WEB_UI_PATH

string

Read the ownCloud Web configuration from this file path.

OCIS_URL
WEB_UI_THEME_SERVER

string

https://localhost:9200

URL to load themes from. Will be prepended to the theme path.

WEB_UI_THEME_PATH

string

/themes/owncloud/theme.json

URL path to load themes from. The theme server will be prepended.

OCIS_URL
WEB_UI_CONFIG_SERVER

string

https://localhost:9200

URL, where the oCIS APIs are reachable for ownCloud Web.

WEB_OIDC_METADATA_URL

string

https://localhost:9200/.well-known/openid-configuration

URL for the OIDC well-known configuration endpoint. Defaults to the oCIS API URL + "/.well-known/openid-configuration".

OCIS_URL
OCIS_OIDC_ISSUER
WEB_OIDC_AUTHORITY

string

https://localhost:9200

URL of the OIDC issuer. It defaults to URL of the builtin IDP.

WEB_OIDC_CLIENT_ID

string

web

OIDC client ID, which ownCloud Web uses. This client needs to be set up in your IDP.

WEB_OIDC_RESPONSE_TYPE

string

code

OIDC response type to use for authentication.

WEB_OIDC_SCOPE

string

openid profile email

OIDC scopes to request during authentication to authorize access to user details. Defaults to 'openid profile email'. Values are separated by blank. More example values but not limited to are 'address' or 'phone' etc.

OCIS_JWT_SECRET
WEB_JWT_SECRET

string

The secret to mint and validate jwt tokens.

WEB_GATEWAY_GRPC_ADDR

string

127.0.0.1:9142

The bind address of the GRPC service.

Environment variables for the web service
Name Type Default Value Description

OCIS_TRACING_ENABLED
WEB_TRACING_ENABLED

bool

false

Activates tracing.

OCIS_TRACING_TYPE
WEB_TRACING_TYPE

string

The type of tracing. Defaults to "", which is the same as "jaeger". Allowed tracing types are "jaeger" and "" as of now.

OCIS_TRACING_ENDPOINT
WEB_TRACING_ENDPOINT

string

The endpoint of the tracing agent.

OCIS_TRACING_COLLECTOR
WEB_TRACING_COLLECTOR

string

The HTTP endpoint for sending spans directly to a collector, i.e. http://jaeger-collector:14268/api/traces. Only used if the tracing endpoint is unset.

OCIS_LOG_LEVEL
WEB_LOG_LEVEL

string

The log level. Valid values are: "panic", "fatal", "error", "warn", "info", "debug", "trace".

OCIS_LOG_PRETTY
WEB_LOG_PRETTY

bool

false

Activates pretty log output.

OCIS_LOG_COLOR
WEB_LOG_COLOR

bool

false

Activates colorized log output.

OCIS_LOG_FILE
WEB_LOG_FILE

string

The path to the log file. Activates logging to this file if set.

WEB_DEBUG_ADDR

string

127.0.0.1:9104

Bind address of the debug server, where metrics, health, config and debug endpoints will be exposed.

WEB_DEBUG_TOKEN

string

Token to secure the metrics endpoint.

WEB_DEBUG_PPROF

bool

false

Enables pprof, which can be used for profiling.

WEB_DEBUG_ZPAGES

bool

false

Enables zpages, which can be used for collecting and viewing in-memory traces.

WEB_HTTP_ADDR

string

127.0.0.1:9100

The bind address of the HTTP service.

OCIS_HTTP_TLS_ENABLED

bool

false

Activates TLS for the http based services using the server certifcate and key configured via OCIS_HTTP_TLS_CERTIFICATE and OCIS_HTTP_TLS_KEY. If OCIS_HTTP_TLS_CERTIFICATE is not set a temporary server certificate is generated - to be used with PROXY_INSECURE_BACKEND=true.

OCIS_HTTP_TLS_CERTIFICATE

string

Path/File name of the TLS server certificate (in PEM format) for the http services.

OCIS_HTTP_TLS_KEY

string

Path/File name for the TLS certificate key (in PEM format) for the server certificate to use for the http services.

WEB_HTTP_ROOT

string

/

Subdirectory that serves as the root for this HTTP service.

WEB_CACHE_TTL

int

604800

Cache policy in seconds for ownCloud Web assets.

WEB_ASSET_PATH

string

Serve ownCloud Web assets from a path on the filesystem instead of the builtin assets.

WEB_UI_CONFIG

string

Read the ownCloud Web configuration from this file.

WEB_UI_PATH

string

Read the ownCloud Web configuration from this file path.

OCIS_URL
WEB_UI_THEME_SERVER

string

https://localhost:9200

URL to load themes from. Will be prepended to the theme path.

WEB_UI_THEME_PATH

string

/themes/owncloud/theme.json

URL path to load themes from. The theme server will be prepended.

OCIS_URL
WEB_UI_CONFIG_SERVER

string

https://localhost:9200

URL, where the oCIS APIs are reachable for ownCloud Web.

WEB_OIDC_METADATA_URL

string

https://localhost:9200/.well-known/openid-configuration

URL for the OIDC well-known configuration endpoint. Defaults to the oCIS API URL + "/.well-known/openid-configuration".

OCIS_URL
OCIS_OIDC_ISSUER
WEB_OIDC_AUTHORITY

string

https://localhost:9200

URL of the OIDC issuer. It defaults to URL of the builtin IDP.

WEB_OIDC_CLIENT_ID

string

web

OIDC client ID, which ownCloud Web uses. This client needs to be set up in your IDP.

WEB_OIDC_RESPONSE_TYPE

string

code

OIDC response type to use for authentication.

WEB_OIDC_SCOPE

string

openid profile email

OIDC scopes to request during authentication to authorize access to user details. Defaults to 'openid profile email'. Values are separated by blank. More example values but not limited to are 'address' or 'phone' etc.

YAML Example

Note that the filename shown below has been chosen on purpose.
See the Configuration File Naming for details when setting up your own configuration.

  • latest

  • 2.0.0

# Autogenerated
# Filename: web-config-example.yaml

tracing:
  enabled: false
  type: ""
  endpoint: ""
  collector: ""
log:
  level: ""
  pretty: false
  color: false
  file: ""
debug:
  addr: 127.0.0.1:9104
  token: ""
  pprof: false
  zpages: false
http:
  addr: 127.0.0.1:9100
  tls:
    enabled: false
    cert: ""
    key: ""
  root: /
  cache_ttl: 604800
asset:
  path: ~/.ocis/web/assets
file: ""
web:
  path: ""
  theme_server: https://localhost:9200
  theme_path: /themes/owncloud/theme.json
  config:
    server: https://localhost:9200
    oidc:
      metadata_url: https://localhost:9200/.well-known/openid-configuration
      authority: https://localhost:9200
      client_id: web
      response_type: code
      scope: openid profile email
    apps:
    - files
    - search
    - text-editor
    - pdf-viewer
    - external
    - admin-settings
    applications: []
    external_apps:
    - id: preview
      path: web-app-preview
      config:
        mimeTypes:
        - image/tiff
        - image/bmp
        - image/x-ms-bmp
    options:
      previewFileMimeTypes:
      - image/gif
      - image/png
      - image/jpeg
      - text/plain
      - image/tiff
      - image/bmp
      - image/x-ms-bmp
token_manager:
  jwt_secret: ""
gateway_addr: 127.0.0.1:9142
# Autogenerated
# Filename: web-config-example.yaml

tracing:
  enabled: false
  type: ""
  endpoint: ""
  collector: ""
log:
  level: ""
  pretty: false
  color: false
  file: ""
debug:
  addr: 127.0.0.1:9104
  token: ""
  pprof: false
  zpages: false
http:
  addr: 127.0.0.1:9100
  tls:
    enabled: false
    cert: ""
    key: ""
  root: /
  cache_ttl: 604800
asset:
  path: ""
file: ""
web:
  path: ""
  theme_server: https://localhost:9200
  theme_path: /themes/owncloud/theme.json
  config:
    server: https://localhost:9200
    oidc:
      metadata_url: https://localhost:9200/.well-known/openid-configuration
      authority: https://localhost:9200
      client_id: web
      response_type: code
      scope: openid profile email
    apps:
    - files
    - search
    - text-editor
    - pdf-viewer
    - external
    - user-management
    applications: []
    external_apps:
    - id: settings
      path: /settings.js
      config: {}
    - id: preview
      path: web-app-preview
      config:
        mimeTypes:
        - image/tiff
        - image/bmp
        - image/x-ms-bmp
    options:
      previewFileMimeTypes:
      - image/gif
      - image/png
      - image/jpeg
      - text/plain
      - image/tiff
      - image/bmp
      - image/x-ms-bmp