---
title: "Premium self-hosted bundle - Hyperlinking service container"
description: "How-to deploy the Hyperlinking service from the self-hosted bundle as a docker image."
canonical_url: "https://www.tiny.cloud/docs/tinymce/6/bundle-hyperlinking-container/"
md_url: "https://www.tiny.cloud/docs/tinymce/6/bundle-hyperlinking-container/index.md"
version: "6"
last_updated: "2022-03-31T00:32:33Z"
tokens: 1186
---
Important This page documents TinyMCE 6. For new projects, Tiny recommends using the latest, most up-to-date version. [See TinyMCE 8 documentation](../../latest/).
# Premium self-hosted bundle - Hyperlinking service container

## Deploy the TinyMCE hyperlinking server-side component using Docker (self-hosted enterprise bundles)

The TinyMCE hyperlinking server-side component can be deployed using Docker or a container orchestration application such as Kubernetes. Tiny provides a pre-configured package for creating a Hyperlinking Docker image.

> **Warning:** Do not push this docker image to a publicly accessible container registry. Doing so will constitute a breach of the Tiny Self-Hosted Software License Agreement, *including*:
> 
> - [The Tiny Self-Hosted Software License Agreement - (Enterprise Users)](/legal/tiny-self-hosted-enterprise-agreement/).
> - [The Tiny Self-Hosted Software License Agreement - (OEM & SaaS Users)](/legal/tiny-self-hosted-oem-saas-agreement/).

### Procedure

The following procedure covers downloading, configuring, building and testing the TinyMCE Hyperlinking Docker image.

> **Note:** This procedure assumes that a TinyMCE self-hosted enterprise bundle has been extracted as described in [Download and extract the TinyMCE Self-hosted Bundle](../bundle-intro-setup/#download-and-extract-the-tinymce-self-hosted-bundle).

1. Navigate into the `tinymce-services` folder.

```sh
cd tinymce-selfhosted/tinymce-services/
```
2. Extract the contents of `ephox-hyperlinking-docker-starter-kit.zip`, such as:

```sh
unzip ephox-hyperlinking-docker-starter-kit.zip -d hyperlinking-service-dockerfile
```
The structure of the extracted files will be:

```sh
hyperlinking-service-dockerfile/
├── config
│   └── ephox-hyperlinking-docker-env.conf
├── docker-entrypoint.sh
├── Dockerfile
└── generate-jetty-start.sh
```
3. Copy `ephox-hyperlinking.war` into the directory containing the extracted files, such as:

```sh
cp ephox-hyperlinking.war hyperlinking-service-dockerfile/
```
4. Navigate into the `hyperlinking-service-dockerfile` folder.

```sh
cd hyperlinking-service-dockerfile
```
5. Set the permissions on the extracted files to executable.

```sh
chmod +x *.sh
```
6. *Optional*: Edit the `http` configuration settings in `config/ephox-hyperlinking-docker-env.conf`. The configurable settings are in the `http` section of the file. For example:

```properties
http {
  max-connections = 100
  max-connections-per-host = 10
  max-redirects = 10
  max-retries = 3
  request-timeout-seconds = 10
  trust-all-cert = false
  websphere = {
    use-ssl-config = true
  }
}
```
For information on the `http` configuration setting, see: [Configure server-side components - `http`](../configure-common-settings-services/#http).
7. *Optional*: Update the link-checking cache configuration, as described in [Link Checker self-hosted quick setup](../configure-hyperlink-service/).
8. *Optional*: Configure the Enhanced Media Embed Service, as described in [Configure Enhanced Media Embed Server](../mediaembed-server-config/).
9. *Optional*: Configure the service to use a HTTP proxy by updating `config/ephox-hyperlinking-docker-env.conf`. See: [Configure server-side components - proxy](../configure-common-settings-services/#proxy).
10. Create an `origins.env` file in the same directory as the `Dockerfile`, and specify the Hypertext Transfer Protocol (HTTP) and domain name of sites hosting the TinyMCE editor (`allowed-origins`). Up to 99 origins can be added without editing `config/ephox-hyperlinking-docker-env.conf`.

For example:

```properties
ORIGIN0=example.net
ORIGIN1=example
ORIGIN2=http://example.org
```
For information on `allowed-origins`, see: [Configure server-side components - allowed-origins](../configure-required-services/#allowed-origins).
11. As the root user or Administrator, build the TinyMCE Hyperlinking Docker image using the following command:

```sh
docker build -t tinymce-hyperlinking-service .
```
12. As the root user or Administrator, deploy the service using the following command:

```sh
docker run -d -p 8083:8080 --env-file origins.env tinymce-hyperlinking-service
```
Where:

  - `-p 8083:8080` maps the container port `8080` to local port `8083`.
  - `--env-file origins.env` adds the allowed origins to the container.
13. To verify that the Docker container is deployed and the hyperlinking service is running, execute:

```sh
curl http://localhost:8083/ephox-hyperlinking/
```
The response from the `curl` command should be:

```sh
Link checking and media embedding service is running.
```
The TinyMCE Hyperlinking Docker image can now be pushed to a private container registry for deployment on [Kubernetes](https://kubernetes.io/), [Docker Swarm](https://docs.docker.com/engine/swarm/) or [OpenShift](https://www.openshift.com/).
