Deploying Stirling PDF with Docker on Linux for Remote Image Management via Internal Network Penetration

Stirling PDF is a web-based, open-source PDF tool hosted locally via Docker, enabling operations like splitting, merging, converting, reorganizing, adding images, rotating, and compressing PDF files. Initially developed entirely by ChatGPT, it has evolved into a comprehensive solution for PDF management.

Docker Installation

For environments such as CentOS 7 with SSH access via Xshell7, install Docker if not already present. Skip these steps if Docker is installed.

Install necessary packages and set up the repository:

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Install Docker Engine:

sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Start Docker and verify the installation:

sudo systemctl start docker
sudo docker run hello-world

Local Deployement of Stirling PDF

Check Docker service status:

systemctl status docker

Verify Docker and Docker Compose versions:

docker -v
docker compose version

Pull the Stirling PDF image from Docker Hub:

docker pull frooodle/s-pdf:latest

Create a container using Docker CLI and monitor its status:

docker ps
docker logs stirling-pdf

Access the application locally at 192.168.149.143:8380, replacing the IP with your server's address. Switch the interface language by clicking the globe icon and selecting Simplified Chinese.

Features of Stirling PDF

The tool offers an interactive GUI for merging, splitting, rotating, and rearrenging PDF pages. It supports combining multiple PDFs into one file, splitting PDFs by page ranges or extracting all pages individually, and converting PDFs to formats like Word, PowerPoint, and others. Common functionalities include converting Word documents to PDF and adding watermarks via the security menu.

To enable remote access without local deployment, use an internal network penetration tool like cpolar for public network connectivity.

Setting Up cpolar for Internal Network Penetration

Install cpolar using a one-line script:

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

Add and start the cpolar service:

sudo systemctl enable cpolar
sudo systemctl start cpolar

After installation, access the cpolar web interface at http://<server_local_ip>:9200 and log in with your cpolar account.

Configure a public HTTP address for Stirling PDF by creating a tunnel in the web interface:

  • Tunnel Name: Custom name, unique from existing tunnels.
  • Protocol: HTTP.
  • Local Address: 8380.
  • Domain Type: Free random domain.
  • Region: China Top.

Once created, view the public addresses (HTTP and HTTPS) under Status > Online Tunnel List. Use the HTTPS address to access Stirling PDF from any device, eliminating the need for a cloud server.

Assigning a Fixed Public Address

For persistent remote access, set a fixed subdomain to avoid address changes every 24 hours and improve memorability. This requires upgrading cpolar to a Professional plan or higher.

Log into the cpolar website, navigate to Reservations > Reserve Secondary Subdomain, enter a subdomain name, and save it. Copy the reserved subdomain.

In the cpolar web UI, edit the existing tunnel under Tunnel Management > Tunnel List:

  • Domain Type: Secondary Subdomain.
  • Sub Domain: Enter the reserved subdomain. Click Update once to apply changes. The public address will now reflect the fixed subdomain, providing a permanent URL for remote access to Stirling PDF.

Tags: Linux docker Stirling PDF Internal Network Penetration Remote Access

Posted on Thu, 15 Oct 2026 16:28:09 +0000 by GaryE