<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://serverrental.store/index.php?action=history&amp;feed=atom&amp;title=Docker</id>
	<title>Docker - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://serverrental.store/index.php?action=history&amp;feed=atom&amp;title=Docker"/>
	<link rel="alternate" type="text/html" href="https://serverrental.store/index.php?title=Docker&amp;action=history"/>
	<updated>2026-04-14T22:28:38Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://serverrental.store/index.php?title=Docker&amp;diff=1537&amp;oldid=prev</id>
		<title>Admin: Automated server configuration article</title>
		<link rel="alternate" type="text/html" href="https://serverrental.store/index.php?title=Docker&amp;diff=1537&amp;oldid=prev"/>
		<updated>2025-04-15T10:59:02Z</updated>

		<summary type="html">&lt;p&gt;Automated server configuration article&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;# Docker Server Configuration for MediaWiki&lt;br /&gt;
&lt;br /&gt;
This article provides a comprehensive guide to configuring a MediaWiki instance using [[Docker]]. Docker simplifies deployment and management by packaging applications and their dependencies into standardized units called containers. This eliminates many &amp;quot;works on my machine&amp;quot; problems and ensures consistency across different environments. This guide assumes basic familiarity with the command line and fundamental networking concepts.&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
Before beginning, ensure you have the following installed:&lt;br /&gt;
&lt;br /&gt;
*   [[Docker]]: The core Docker engine.  Installation instructions vary by operating system; refer to the official [[Docker documentation|https://docs.docker.com/get-docker/]] for details.&lt;br /&gt;
*   [[Docker Compose]]: A tool for defining and running multi-container Docker applications. Usually installed alongside Docker, but may require separate installation depending on your OS.&lt;br /&gt;
*   A basic understanding of [[Linux command line]].&lt;br /&gt;
*   A text editor for creating configuration files.&lt;br /&gt;
&lt;br /&gt;
== Understanding the Components ==&lt;br /&gt;
&lt;br /&gt;
A typical MediaWiki Docker setup involves several key components:&lt;br /&gt;
&lt;br /&gt;
*   '''Web Server (Apache or Nginx)''': Handles incoming HTTP requests and serves the MediaWiki interface.&lt;br /&gt;
*   '''PHP''': Processes the MediaWiki application logic.&lt;br /&gt;
*   '''MariaDB or MySQL''': Stores the MediaWiki data (pages, revisions, user information, etc.).&lt;br /&gt;
*   '''Redis (Optional)'': Caching layer for improved performance.&lt;br /&gt;
*   '''Message Queue (Optional, e.g., RabbitMQ)'': For asynchronous tasks like job processing.&lt;br /&gt;
&lt;br /&gt;
Docker allows us to run each of these as separate containers, communicating with each other through defined networks.&lt;br /&gt;
&lt;br /&gt;
== Docker Compose Configuration ==&lt;br /&gt;
&lt;br /&gt;
The recommended approach is to define your MediaWiki environment using a `docker-compose.yml` file. Below is an example configuration. Adjust versions and resource allocations as needed for your specific requirements.&lt;br /&gt;
&lt;br /&gt;
```yaml&lt;br /&gt;
version: &amp;quot;3.9&amp;quot;&lt;br /&gt;
&lt;br /&gt;
services:&lt;br /&gt;
  db:&lt;br /&gt;
    image: mariadb:10.6&lt;br /&gt;
    container_name: mediawiki_db&lt;br /&gt;
    restart: always&lt;br /&gt;
    environment:&lt;br /&gt;
      MYSQL_ROOT_PASSWORD: your_root_password&lt;br /&gt;
      MYSQL_DATABASE: mediawiki&lt;br /&gt;
      MYSQL_USER: mediawiki&lt;br /&gt;
      MYSQL_PASSWORD: your_mediawiki_password&lt;br /&gt;
    volumes:&lt;br /&gt;
      - db_data:/var/lib/mysql&lt;br /&gt;
&lt;br /&gt;
  web:&lt;br /&gt;
    image: nginx:latest&lt;br /&gt;
    container_name: mediawiki_web&lt;br /&gt;
    restart: always&lt;br /&gt;
    ports:&lt;br /&gt;
      - &amp;quot;80:80&amp;quot;&lt;br /&gt;
      - &amp;quot;443:443&amp;quot; #For HTTPS, configure SSL certificates separately&lt;br /&gt;
    volumes:&lt;br /&gt;
      - ./nginx/conf.d:/etc/nginx/conf.d&lt;br /&gt;
      - ./mediawiki:/var/www/html&lt;br /&gt;
    depends_on:&lt;br /&gt;
      - php&lt;br /&gt;
&lt;br /&gt;
  php:&lt;br /&gt;
    image: php:8.2-fpm&lt;br /&gt;
    container_name: mediawiki_php&lt;br /&gt;
    restart: always&lt;br /&gt;
    volumes:&lt;br /&gt;
      - ./mediawiki:/var/www/html&lt;br /&gt;
    depends_on:&lt;br /&gt;
      - db&lt;br /&gt;
    environment:&lt;br /&gt;
      PHP_MEMORY_LIMIT: 256M&lt;br /&gt;
      PHP_MAX_EXECUTION_TIME: 30&lt;br /&gt;
&lt;br /&gt;
volumes:&lt;br /&gt;
  db_data:&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
== Detailed Service Specifications ==&lt;br /&gt;
&lt;br /&gt;
Here's a breakdown of the services defined in the `docker-compose.yml` file, presented in a tabular format.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Service Name&lt;br /&gt;
! Image Used&lt;br /&gt;
! Purpose&lt;br /&gt;
! Key Configuration&lt;br /&gt;
|-&lt;br /&gt;
| db&lt;br /&gt;
| mariadb:10.6&lt;br /&gt;
| Stores MediaWiki database.&lt;br /&gt;
| Root password, database name, user credentials, persistent volume.&lt;br /&gt;
|-&lt;br /&gt;
| web&lt;br /&gt;
| nginx:latest&lt;br /&gt;
| Serves MediaWiki web pages.&lt;br /&gt;
| Port mappings (80, 443), Nginx configuration, MediaWiki files.&lt;br /&gt;
|-&lt;br /&gt;
| php&lt;br /&gt;
| php:8.2-fpm&lt;br /&gt;
| Processes PHP code for MediaWiki.&lt;br /&gt;
| MediaWiki files, PHP memory limit, maximum execution time.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Database Configuration ==&lt;br /&gt;
&lt;br /&gt;
The `db` service uses a MariaDB container.  The example `docker-compose.yml` sets up a basic database with a root password, a dedicated MediaWiki database, and a user specifically for MediaWiki access.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Variable&lt;br /&gt;
! Description&lt;br /&gt;
! Example&lt;br /&gt;
|-&lt;br /&gt;
| `MYSQL_ROOT_PASSWORD`&lt;br /&gt;
| Password for the MariaDB root user.&lt;br /&gt;
| `your_root_password`&lt;br /&gt;
|-&lt;br /&gt;
| `MYSQL_DATABASE`&lt;br /&gt;
| Name of the database to create for MediaWiki.&lt;br /&gt;
| `mediawiki`&lt;br /&gt;
|-&lt;br /&gt;
| `MYSQL_USER`&lt;br /&gt;
| Username for the MediaWiki application to access the database.&lt;br /&gt;
| `mediawiki`&lt;br /&gt;
|-&lt;br /&gt;
| `MYSQL_PASSWORD`&lt;br /&gt;
| Password for the MediaWiki user.&lt;br /&gt;
| `your_mediawiki_password`&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
**Important:** Replace the placeholder passwords with strong, unique values.&lt;br /&gt;
&lt;br /&gt;
== Web Server (Nginx) Configuration ==&lt;br /&gt;
&lt;br /&gt;
The `web` service uses an Nginx container to serve the MediaWiki files. A custom Nginx configuration file located at `./nginx/conf.d/default.conf` (not provided in full here for brevity) is mounted into the container. This configuration should be set up to proxy requests to the PHP-FPM container.  Typical configuration points include setting up the document root to `/var/www/html` and configuring the PHP-FPM proxy pass.&lt;br /&gt;
&lt;br /&gt;
== PHP Configuration ==&lt;br /&gt;
&lt;br /&gt;
The `php` service uses a PHP-FPM container.  Key PHP settings, such as `PHP_MEMORY_LIMIT` and `PHP_MAX_EXECUTION_TIME`, are configured using environment variables. The MediaWiki files are mounted into the container at `/var/www/html`.&lt;br /&gt;
&lt;br /&gt;
== Running the Application ==&lt;br /&gt;
&lt;br /&gt;
1.  Save the `docker-compose.yml` file in a directory of your choice.&lt;br /&gt;
2.  Create a directory named `nginx` within that directory and create a configuration file such as `default.conf` inside.&lt;br /&gt;
3.  Download the latest [[MediaWiki]] release and extract it into a directory named `mediawiki` in the same directory as the `docker-compose.yml` file.&lt;br /&gt;
4.  Open a terminal in that directory and run:&lt;br /&gt;
&lt;br /&gt;
    ```bash&lt;br /&gt;
    docker-compose up -d&lt;br /&gt;
    ```&lt;br /&gt;
&lt;br /&gt;
    This command builds and starts the containers in detached mode.&lt;br /&gt;
&lt;br /&gt;
5.  Access MediaWiki in your web browser at `http://localhost` (or the appropriate IP address if running remotely).&lt;br /&gt;
6.  Follow the [[MediaWiki installation guide]] to complete the setup process, providing the database credentials defined in the `docker-compose.yml` file.&lt;br /&gt;
&lt;br /&gt;
== Scaling and Persistence ==&lt;br /&gt;
&lt;br /&gt;
*   **Scaling:**  You can scale the PHP-FPM containers horizontally by increasing the `replicas` value in the `docker-compose.yml` file. A load balancer (like Nginx) will distribute requests across the instances.&lt;br /&gt;
*   **Persistence:** The `db_data` volume ensures that the database data persists even if the `db` container is stopped or removed.  Consider using named volumes or bind mounts for other persistent data, such as the `mediawiki` directory containing the MediaWiki files.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
*   Check container logs: `docker-compose logs &amp;lt;service_name&amp;gt;`.&lt;br /&gt;
*   Verify network connectivity between containers: `docker exec -it &amp;lt;container_name&amp;gt; ping &amp;lt;other_container_name&amp;gt;`.&lt;br /&gt;
*   Ensure the Nginx configuration correctly proxies requests to the PHP-FPM container.&lt;br /&gt;
*   Review the [[MediaWiki System Requirements]] to ensure your server meets the minimum specifications.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Special:MyLanguage/Help:Contents]]&lt;br /&gt;
[[Special:MyLanguage/Manual:Configuration settings]]&lt;br /&gt;
[[Special:MyLanguage/Manual:Database setup]]&lt;br /&gt;
[[Special:MyLanguage/Manual:Installing MediaWiki]]&lt;br /&gt;
[[Special:MyLanguage/Help:Extensions]]&lt;br /&gt;
[[Special:MyLanguage/Help:Skin]]&lt;br /&gt;
[[Special:MyLanguage/Manual:Command-line tools]]&lt;br /&gt;
[[Special:MyLanguage/Manual:Upgrading MediaWiki]]&lt;br /&gt;
[[Special:MyLanguage/Manual:API]]&lt;br /&gt;
[[Special:MyLanguage/Manual:Admin tasks]]&lt;br /&gt;
[[Special:MyLanguage/Manual:Configuration]]&lt;br /&gt;
[[Special:MyLanguage/Manual:Performance]]&lt;br /&gt;
[[Special:MyLanguage/Manual:Security best practices]]&lt;br /&gt;
[[Special:MyLanguage/Help:Templates]]&lt;br /&gt;
[[Special:MyLanguage/Help:Categories]]&lt;br /&gt;
[[Special:MyLanguage/Help:Linking]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Server Hardware]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Intel-Based Server Configurations ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Configuration&lt;br /&gt;
! Specifications&lt;br /&gt;
! Benchmark&lt;br /&gt;
|-&lt;br /&gt;
| [[Core i7-6700K/7700 Server]]&lt;br /&gt;
| 64 GB DDR4, NVMe SSD 2 x 512 GB&lt;br /&gt;
| CPU Benchmark: 8046&lt;br /&gt;
|-&lt;br /&gt;
| [[Core i7-8700 Server]]&lt;br /&gt;
| 64 GB DDR4, NVMe SSD 2x1 TB&lt;br /&gt;
| CPU Benchmark: 13124&lt;br /&gt;
|-&lt;br /&gt;
| [[Core i9-9900K Server]]&lt;br /&gt;
| 128 GB DDR4, NVMe SSD 2 x 1 TB&lt;br /&gt;
| CPU Benchmark: 49969&lt;br /&gt;
|-&lt;br /&gt;
| [[Core i9-13900 Server (64GB)]]&lt;br /&gt;
| 64 GB RAM, 2x2 TB NVMe SSD&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Core i9-13900 Server (128GB)]]&lt;br /&gt;
| 128 GB RAM, 2x2 TB NVMe SSD&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Core i5-13500 Server (64GB)]]&lt;br /&gt;
| 64 GB RAM, 2x500 GB NVMe SSD&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Core i5-13500 Server (128GB)]]&lt;br /&gt;
| 128 GB RAM, 2x500 GB NVMe SSD&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[Core i5-13500 Workstation]]&lt;br /&gt;
| 64 GB DDR5 RAM, 2 NVMe SSD, NVIDIA RTX 4000&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== AMD-Based Server Configurations ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Configuration&lt;br /&gt;
! Specifications&lt;br /&gt;
! Benchmark&lt;br /&gt;
|-&lt;br /&gt;
| [[Ryzen 5 3600 Server]]&lt;br /&gt;
| 64 GB RAM, 2x480 GB NVMe&lt;br /&gt;
| CPU Benchmark: 17849&lt;br /&gt;
|-&lt;br /&gt;
| [[Ryzen 7 7700 Server]]&lt;br /&gt;
| 64 GB DDR5 RAM, 2x1 TB NVMe&lt;br /&gt;
| CPU Benchmark: 35224&lt;br /&gt;
|-&lt;br /&gt;
| [[Ryzen 9 5950X Server]]&lt;br /&gt;
| 128 GB RAM, 2x4 TB NVMe&lt;br /&gt;
| CPU Benchmark: 46045&lt;br /&gt;
|-&lt;br /&gt;
| [[Ryzen 9 7950X Server]]&lt;br /&gt;
| 128 GB DDR5 ECC, 2x2 TB NVMe&lt;br /&gt;
| CPU Benchmark: 63561&lt;br /&gt;
|-&lt;br /&gt;
| [[EPYC 7502P Server (128GB/1TB)]]&lt;br /&gt;
| 128 GB RAM, 1 TB NVMe&lt;br /&gt;
| CPU Benchmark: 48021&lt;br /&gt;
|-&lt;br /&gt;
| [[EPYC 7502P Server (128GB/2TB)]]&lt;br /&gt;
| 128 GB RAM, 2 TB NVMe&lt;br /&gt;
| CPU Benchmark: 48021&lt;br /&gt;
|-&lt;br /&gt;
| [[EPYC 7502P Server (128GB/4TB)]]&lt;br /&gt;
| 128 GB RAM, 2x2 TB NVMe&lt;br /&gt;
| CPU Benchmark: 48021&lt;br /&gt;
|-&lt;br /&gt;
| [[EPYC 7502P Server (256GB/1TB)]]&lt;br /&gt;
| 256 GB RAM, 1 TB NVMe&lt;br /&gt;
| CPU Benchmark: 48021&lt;br /&gt;
|-&lt;br /&gt;
| [[EPYC 7502P Server (256GB/4TB)]]&lt;br /&gt;
| 256 GB RAM, 2x2 TB NVMe&lt;br /&gt;
| CPU Benchmark: 48021&lt;br /&gt;
|-&lt;br /&gt;
| [[EPYC 9454P Server]]&lt;br /&gt;
| 256 GB RAM, 2x2 TB NVMe&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Order Your Dedicated Server ==&lt;br /&gt;
[https://powervps.net/?from=32 Configure and order] your ideal server configuration&lt;br /&gt;
&lt;br /&gt;
=== Need Assistance? ===&lt;br /&gt;
* Telegram: [https://t.me/powervps @powervps Servers at a discounted price]&lt;br /&gt;
&lt;br /&gt;
⚠️ *Note: All benchmark scores are approximate and may vary based on configuration. Server availability subject to stock.* ⚠️&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>