Wie kann ich mit Docker das neueste offizielle WordPress-Image in PHP-Version 8 erstellen?

Lesezeit: 4 Minuten

ich benutze Offizielles WordPress-Bild von Dockers um lokale WordPress-Umgebungen bereitzustellen Docker komponieren.

Nach dem Rennen docker-compose up -d und dann laufen phpinfo() Funktion in meinem lokalen Theme-Code, die aktuell laufende PHP-Version ist 7.4

Geben Sie hier eine Bildbeschreibung ein

Aber wenn man sich das anschaut Offizielles WordPress-Image-Repo auf GithubSie können sehen, dass die neueste WordPress-Version PHP-Version 8.0 unterstützt …

Geben Sie hier eine Bildbeschreibung ein

Meine Frage ist, wie ich mein WordPress-Docker-Image mit bereitstellen kann php8.0?

Hier ist mein docker-compose.yml Datei…

version: '3.7'

networks:
  wordpress:
    ipam:
      config:
        - subnet: 172.25.0.0/16

services:

  # here is our mysql database
  db:
    image: mysql:5.7
    volumes:
     - ./db:/var/lib/mysql:delegated
     #- ./docker/db-dumps:/docker-entrypoint-initdb.d:delegated
    ports:
      - "3306:3306"
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: somewordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    networks:
      - wordpress

  # here is our wordpress server
  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      # our persistent local data re routing
      - ./themes/example:/var/www/html/wp-content/themes/example:delegated
      - ./plugins:/var/www/html/wp-content/plugins
      - ./mu-plugins:/var/www/html/wp-content/mu-plugins
      - ./uploads:/var/www/html/wp-content/uploads
      - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
    ports:
      - "80:80"
    restart: always
    networks:
      - wordpress
    environment:

      # our local dev environment
      WORDPRESS_DEBUG: 1

      # docker wp-config settings
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
      WORDPRESS_AUTH_KEY: 5f6ede1b94d25a2294e29eeba929a8c80a5ac0fb
      WORDPRESS_SECURE_KEY: 5f6ede1b94d25a2294e29eeba929a8c80a5ac0fb
      WORDPRESS_LOGGED_IN_KEY: 5f6ede1b94d25a2294e29eeba929a8c80a5ac0fb
      WORDPRESS_NONCE_KEY: 5f6ede1b94d25a2294e29eeba929a8c80a5ac0fb
      WORDPRESS_SECURE_AUTH_SALT: 5f6ede1b94d25a2294e29eeba929a8c80a5ac0fb
      WORDPRESS_LOGGED_IN_SALT: 5f6ede1b94d25a2294e29eeba929a8c80a5ac0fb
      WORDPRESS_NONCE_SALT: 5f6ede1b94d25a2294e29eeba929a8c80a5ac0fb
      WORDPRESS_CONFIG_EXTRA: |

        /* development parameters */
        define('WP_CACHE', false);
        define('ENVIRONMENT', 'local');

        /* configure mail server */
        define('WORDPRESS_SMTP_AUTH', false);
        define('WORDPRESS_SMTP_SECURE', '');
        define('WORDPRESS_SMTP_HOST', 'mailhog');
        define('WORDPRESS_SMTP_PORT', '1025');
        define('WORDPRESS_SMTP_USERNAME', null);
        define('WORDPRESS_SMTP_PASSWORD', null);
        define('WORDPRESS_SMTP_FROM', '[email protected]');
        define('WORDPRESS_SMTP_FROM_NAME', 'Example');

        if(!defined('WP_HOME')) {
          /* force our home url */
          define('WP_HOME', 'http://localhost');
          define('WP_SITEURL', WP_HOME);
        }

  # here is our mailhog server
  mailhog:
    image: mailhog/mailhog:latest
    ports:
      - "8025:8025"
    networks:
      - wordpress

Wie definiere ich, welche PHP-Version verwendet werden soll? WordPress: Neueste Bild, also jedes Mal, wenn ich docker-compose up -d es nutzt die php8.0 Ausführung?

Für jede Idee oder jeden Rat wäre ich sehr dankbar! 🙂

Das aktuelle WordPress:latest ist auf 7.4, aber Sie können eines davon verwenden Unterstützte Tags in Ihrer Docker-Compose-Datei. In meinem Fall habe ich verwendet image: wordpress:6.0-php8.1-apache

  • Danke dafür, ja, ich habe das am Ende tatsächlich mit dem gleichen Tag sortiert. Damals wusste ich nicht, wie man Tags verwendet, aber jetzt verwende ich sie 👍🏼 Danke

    – Joshmoto

    30. Juni 2022 um 10:24

Ich stimme Duncan zu, Sie benötigen eine getaggte Version

image: wordpress:6.0.2-php8.0-apache

Hinweis: Wenn Ihr WordPress beim Ausführen abstürzt und brennt, können Sie dies tun composer down und ändere es wieder zurück. Es ist am besten, alle Plugins und nicht offiziellen Themes vor dem Wechsel zu deaktivieren, da diese alten Code enthalten könnten, der auf der neuesten PHP-Version wahrscheinlich nicht funktioniert.

  • Tolle Hinweise. Ich experimentiere nur lokal mit WP in PHP8. Ich migriere noch nichts, da ich einige Servertests auf aktuellen Staging-Sites in PHP8 durchgeführt habe und eine Menge veralteter Anmeldungen erhalte WP_DEBUG Modus von Plugins (sogar Premium-Plugins wie Gravity Forms, was ärgerlich ist) und auch einige Composer-Anbieterpakete in meinem Theme geben veraltete Hinweise zurück. Ich teste die lokale Theme-Entwicklung vorsichtig von Grund auf in PHP Lang Level 8.1 und verwende dabei meine IDE, um mich durch die Codierung der „warnfreien“ PHP-Syntax zu führen, was etwas gewöhnungsbedürftig ist. Vielen Dank, dass Sie meine Frage beantwortet haben. 👍🏼

    – Joshmoto

    12. September 2022 um 23:31 Uhr


1450880cookie-checkWie kann ich mit Docker das neueste offizielle WordPress-Image in PHP-Version 8 erstellen?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy