Skip to main content

Configure profiles in Docker

For Docker container installations, you need to create a profile using a Windows installation, export it, and import it into your container.

The version of the Conversion Service installed on Windows and the version of the container image must match.

If you need to update to a new version, update the Windows service first as this automatically updates the configured profiles if necessary.

Make sure that all configuration values are valid in your Docker environment, i.e. URLs to services and paths to configuration files.

Set a profile when starting the Docker container

The file ProfileExport-‹x›.‹y›.‹z›.export (where ‹x›.‹y›.‹z› is the version number of the service) containing the exported profiles must be made available in the container. To import the profiles on service startup, you need to set the IMPORT_PROFILES environment variable.

Import profiles only

This simple profile configuration imports the file ProfileExport-‹x›.‹y›.‹z›.export only, which is typically sufficient.

Bind ProfileExport-‹x›.‹y›.‹z›.export to the container and set the environment variable IMPORT_PROFILES to activate the profile import:

docker run -dp 13033:13033 --network conversion-service \
--mount "type=bind,src=C:\path\to\ProfileExport-3.11.0.export,\
dst=/etc/convsrv/ProfileExport.export,readonly" \
-e IMPORT_PROFILES=/etc/convsrv/ProfileExport.export \
-e LICENSEKEY=4H-V4-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX \
pdftoolsag/conversion-service:3.11.0

When importing profiles of a workflow, you also import the Workflow state, whether the workflow is activated or deactivated.

Import profiles and further configuration files

This more advanced profile configuration is required for profiles that contain references to files, e.g. SSL client certificates for connections to external servers.

  1. When configuring the profiles, use the base path /etc/convsrv for all referenced files.
  2. Create a directory configuration where all configuration files can be written to. Later these files will be copied to a volume and mapped to /etc/convsrv in the container.
  3. Copy ProfileExport-‹x›.‹y›.‹z›.export and all references files to the directory configuration.
  4. Create a volume \convsrv-etc-‹x›.‹y›.‹z› containing all configuration files from configuration:
docker volume create --name convsrv-etc-3.11.0
docker run --rm \
--mount "type=bind,src=c:\path\to\configuration,dst=/source" \
--mount "type=volume,src=convsrv-etc-3.11.0,dst=/etc/convsrv" \
alpine \
ash -c "cp /source/* /etc/convsrv/"
  1. The folder configuration is not required anymore and can be deleted.
  2. Run the image. Mount the volume \convsrv-etc-‹x›.‹y›.‹z› and set the environment variable IMPORT_PROFILES to activate the profile import:
docker run -dp 13033:13033 --network conversion-service \
--mount "type=volume,src=convsrv-etc-3.11.0,dst=/etc/convsrv,readonly" \
-e IMPORT_PROFILES=/etc/convsrv/ProfileExport-3.11.0.export \
-e LICENSEKEY=4H-V3-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX \
pdftoolsag/conversion-service:3.11.0