How to Pull and Run Tinywan’s Docker‑PHP‑Webman Image on Linux and Windows
This guide explains Docker basics, why to use containers, how to pull Tinywan's PHP‑Webman image from GitHub Container Registry, run it on Linux or Windows with proper port and volume mapping, troubleshoot port conflicts, inspect the container, and handle GitHub login if needed.
Introduction
Docker is an open‑source container engine that packages applications and their dependencies into portable containers that run on any Linux host without interfering with each other.
Why Use Docker
Accelerates local development and build pipelines; containers built locally can be easily promoted to test and production environments.
Ensures consistent runtime results across different environments.
Provides isolated environments for testing.
Delivers high performance and efficient host resource utilization.
Enables building custom PaaS platforms such as OpenShift or Cloud Foundry from scratch.
Pulling the Image
docker pull ghcr.io/tinywan/docker-php-webman:latestThe image is hosted on GitHub Container Registry (GHCR), not Docker Hub.
Repository: https://github.com/Tinywan/docker-php-webman
Image registry: https://github.com/Tinywan/docker-php-webman/pkgs/container/docker-php-webman
The image includes PHP versions 7.4.29, 8.1.4, and 8.2.11.
Listing Images
docker imagesTypical output shows repository ghcr.io/tinywan/docker-php-webman with tags 8.2.11 and latest, each about 519 MB.
To pull a specific version, specify the tag, e.g. ghcr.io/tinywan/docker-php-webman:7.4.29.
Running the Container on Linux
docker run --rm -it -p 8787:8787 -v /home/www/webman:/app ghcr.io/tinywan/docker-php-webmanRunning the Container on Windows
docker run --rm -it -p 8787:8787 -v e:/dnmp/www/webman:/app ghcr.io/tinywan/docker-php-webmanPort mapping 8787:8787 exposes the container’s internal port 8787 on the host. The volume mount e:/dnmp/www/webman:/app maps the local Windows directory E:\dnmp\www\webman to /app inside the container.
If port 8787 is already in use, choose an alternative host port, for example 8999:
docker run --rm -it -p 8999:8787 -v e:/dnmp/www/webman:/app ghcr.io/tinywan/docker-php-webman:8.2.11After the container starts, the application is reachable at http://127.0.0.1:8999/.
Inspecting the Running Container
docker ps -aLocate the container ID (e.g. b301d123ebd2) and its port mapping. docker exec -it b301d123ebd2 bash Inside the container you can verify the PHP version and installed extensions:
php -v php -mAuthenticating to GitHub Container Registry
If pulling the image returns a “denied” error, you must log in to GHCR with a personal access token.
# Export a personal access token (PAT) generated on GitHub
export CR_PAT=ghp_XXXXXXXXXXXXXXXXXXXX
# Log in to GHCR
echo $CR_PAT | docker login ghcr.io -u USERNAME --password-stdin
Login SucceededSigned-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Open Source Tech Hub
Sharing cutting-edge internet technologies and practical AI resources.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
