Quickstart: Compose and WordPress

预计阅读时间:3分钟

您可以使用 Docker Compose 在使用 Docker 容器构建的隔离环境中轻松运行 WordPress. 本快速入门指南演示了如何使用 Compose 设置和运行 WordPress. 在开始之前,请确保您已安装 Compose .

Define the project

  1. 创建一个空的项目目录.

    您可以将目录命名为易于记忆的名称. 此目录是您的应用程序映像的上下文. 该目录应该只包含构建该图像的资源.

    这个项目目录包含一个docker-compose.yml文件,它本身就是一个完整的入门 wordpress 项目.

    提示:您可以为此文件使用.yml.yaml扩展名. 他们都工作.

  2. 切换到您的项目目录.

    例如,如果您将目录命名为my_wordpress

    $ cd my_wordpress/
    
  3. 创建一个docker-compose.yml文件来启动您的WordPress博客和一个带有卷挂载的单独MySQL实例以实现数据持久性:

    version: "3.9"
        
    services:
      db:
        image: mysql:5.7
        volumes:
          - db_data:/var/lib/mysql
        restart: always
        environment:
          MYSQL_ROOT_PASSWORD: somewordpress
          MYSQL_DATABASE: wordpress
          MYSQL_USER: wordpress
          MYSQL_PASSWORD: wordpress
        
      wordpress:
        depends_on:
          - db
        image: wordpress:latest
        volumes:
          - wordpress_data:/var/www/html
        ports:
          - "8000:80"
        restart: always
        environment:
          WORDPRESS_DB_HOST: db
          WORDPRESS_DB_USER: wordpress
          WORDPRESS_DB_PASSWORD: wordpress
          WORDPRESS_DB_NAME: wordpress
    volumes:
      db_data: {}
      wordpress_data: {}
    

Notes:

  • docker 卷db_datawordpress_data将 WordPress 所做的更新以及已安装的主题和插件持久保存到数据库中. 了解有关 docker 卷的更多信息

  • WordPress Multisite 仅适用于端口80443 .

Build the project

现在,从您的项目目录运行docker-compose up -d .

这将在分离模式下运行docker-compose up ,拉取所需的 Docker 映像,并启动 wordpress 和数据库容器,如下例所示.

$ docker-compose up -d

Creating network "my_wordpress_default" with the default driver
Pulling db (mysql:5.7)...
5.7: Pulling from library/mysql
efd26ecc9548: Pull complete
a3ed95caeb02: Pull complete
<...>
Digest: sha256:34a0aca88e85f2efa5edff1cea77cf5d3147ad93545dbec99cfe705b03c520de
Status: Downloaded newer image for mysql:5.7
Pulling wordpress (wordpress:latest)...
latest: Pulling from library/wordpress
efd26ecc9548: Already exists
a3ed95caeb02: Pull complete
589a9d9a7c64: Pull complete
<...>
Digest: sha256:ed28506ae44d5def89075fd5c01456610cd6c64006addfe5210b8c675881aff6
Status: Downloaded newer image for wordpress:latest
Creating my_wordpress_db_1
Creating my_wordpress_wordpress_1

注意:WordPress Multisite 仅适用于端口80和/或443 . 如果您收到有关将0.0.0.0绑定到端口80443 (取决于您指定的端口)的错误消息,则您为 WordPress 配置的端口可能已被其他服务使用.

Bring up WordPress in a web browser

至此,WordPress 应该运行在你的 Docker Host 的8000端口上,你就可以以 WordPress 管理员的身份完成"著名的五分钟安装"了.

注意:WordPress 站点在端口8000上无法立即使用,因为容器仍在初始化中,可能需要几分钟才能首次加载.

如果您使用 Docker Desktop for Mac 或 Docker Desktop for Windows,您可以使用http://localhost作为 IP 地址,并在 Web 浏览器中打开http://localhost:8000 .

Choose language for WordPress install

WordPress Welcome

Shutdown and cleanup

命令docker-compose down删除容器和默认网络,但保留您的 WordPress 数据库.

命令docker-compose down --volumes删除容器、默认网络和 WordPress 数据库.

More Compose documentation

documentation, docs, docker, compose, orchestration, containers

by  icopy.site