TX Text Control .NET Server

Docker

Topic

What does an application with TX Text Control .NET Server need to run in a Docker container? Less than on a classic server: the Core engine, its native Linux libraries, its fonts and the Document Editor backend are all part of the published application, and Microsoft's ASP.NET Core runtime image provides the rest. What needs attention are the credentials of the private NuGet feed during the build, the choice of the base image and, with the Document Editor, the processes and the load balancing of several containers.

How an Application Runs in a Container

Build stage: mcr.microsoft.com/dotnet/sdk:10.0
    restore from the Text Control Private NuGet Feed, with nuget.config as a build secret
    publish for linux-x64
        |
        v
Final stage: mcr.microsoft.com/dotnet/aspnet:10.0
    /app: your application, TX Text Control assemblies, native libraries, Fonts, Document Editor backend
    dotnet MyApp.dll, port 8080
  • Linux containers use the Core engine. The Classic engine runs on Windows only. Text Control names Windows containers as supported as well; there, the Classic engine uses the fonts installed in the container.
  • The base image matters. mcr.microsoft.com/dotnet/aspnet:10.0 runs everything without changes. Chiseled images need the gconv modules of the GNU C Library, and Alpine images don't work.
  • The application starts the Document Editor backend inside the container. Only the port of the application is published; the backend's port 4283 stays inside.
  • Each running container needs a runtime license. See Runtime Licenses.

Find the Right Page

If you want toRead
Write a multi-stage Dockerfile, pass the NuGet feed credentials as a secret, choose the base image and use chiseled imagesDockerfile
Add company fonts to the image and check which fonts the engine and the Document Editor useFonts
Understand the processes of the Document Editor and run its backend in a separate container with Docker ComposeMultiple Processes
Run several containers behind a load balancer and keep editing sessions intactScaling Containers
Check the libraries, files and ports a Linux container needsLinux Requirements

Where to Start

  1. Dockerfile: build and run the image of your application.
  2. Fonts: when your documents use fonts that the package doesn't ship.
  3. Multiple Processes and Scaling Containers: before you run the Document Editor in more than one container.
  4. CI/CD: build the image in a pipeline.