您的位置:58编程 > docker wordpress Docker Fig实战 wordpress

docker wordpress Docker Fig实战 wordpress

2023-03-15 23:33

docker wordpress Docker Fig实战 wordpress

docker wordpress

Docker WordPress 是一种使用 Docker 容器技术来部署 WordPress 的方法。它可以让你在本地或云端快速部署 WordPress,而无需安装任何软件。

Docker WordPress 可以帮助你更快地开发和部署 WordPress 站点,而不用担心服务器的配置问题。它还可以帮助你更轻松地迁移站点,因为所有的依赖关系都已包含在 Docker 容器中。

要使用 Docker WordPress,你需要先安装 Docker 和 Docker Compose。Docker 是一个开源的容器引擎,可以将应用程序打包成独立的容器,并将其部署到任何平台上。而 Docker Compose 是一个工具,可以帮助你创建、启动和运行多个容器中的应用。

$ docker-compose up -d  # 后台启动docker-compose 
$ docker-compose down    # 停止docker-compose 
$ docker-compose ps      # 查看docker-compose 运行情况  

当你准备好了之后,就可以使用 Docker Compose 部署 WordPress 站点了。要这么做,你需要创建一个 docker-compose.yml 文件(也就是“docker compose”文件)来描述整个应用的依赖关系、端口映射、数据卷映射、服务依赖性、日志选项、重新启动选项等信息。

version: '3'  # 运行版本 
services:      # 服务列表 

    wordpress:   # 服务名字 

        image: wordpress:latest   # 镜像版本 

        ports:                   # 端口映射 

            - 8080:80            # 本地8080端口映射到wordpress 80端口  

        environment:             # 环境变量  

            WORDPRESS_DB_HOST: db     # 连接数据库host  

            WORDPRESS_DB_USER: exampleuser     # 数据库用户名  

            WORDPRESS_DB_PASSWORD: examplepass     # 数据库密码   

当你准备好了之后,就可以使用 docker-compose up -d 命令来后台运行该文件中所定义的所有服务了。当然,如果想要看到正圸工作的话,还得去修改 wp-config.php 文件中的相关信息来匹配上文中所定义的数据库信息。

Docker Fig实战 wordpress

使用 Wordpress 入门 Fig

Fig 让 Wordpress 运行在一个独立的环境中很简易。 安装 Fig ,然后下载 Wordpress 到当前目录:

wordpress.org/latest.tar.gz | tar -xvzf -

这将会创建一个叫 wordpress 目录,你也可以重命名成你想要的名字。在目录里面,创建一个 Dockerfile 文件,定义应用的运行环境:

FROM orchardup/php5
ADD . /code

以上内容告诉 Docker 创建一个包含 PHP 和 Wordpress 的镜像。更多关于如何编写 Dockerfile 文件的信息可以查看 镜像创建 和 Dockerfile 使用。

下一步,fig.yml 文件将开启一个 web 服务和一个独立的 MySQL 实例:

web:
  build: .
  command: php -S 0.0.0.0:8000 -t /code
  ports:
    - "8000:8000"
  links:
    - db
  volumes:
    - .:/code
db:
  image: orchardup/mysql
  environment:
    MYSQL_DATABASE: wordpress

要让这个应用跑起来还需要两个文件。 第一个,wp-config.php ,它是一个标准的 Wordpress 配置文件,有一点需要修改的是把数据库的配置指向 db 容器。

<?php
define("DB_NAME", "wordpress");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("DB_HOST", "db:3306");
define("DB_CHARSET", "utf8");
define("DB_COLLATE", "");

define("AUTH_KEY",         "put your unique phrase here");
define("SECURE_AUTH_KEY",  "put your unique phrase here");
define("LOGGED_IN_KEY",    "put your unique phrase here");
define("NONCE_KEY",        "put your unique phrase here");
define("AUTH_SALT",        "put your unique phrase here");
define("SECURE_AUTH_SALT", "put your unique phrase here");
define("LOGGED_IN_SALT",   "put your unique phrase here");
define("NONCE_SALT",       "put your unique phrase here");

$table_prefix  = "wp_";
define("WPLANG", "");
define("WP_DEBUG", false);

if ( !defined("ABSPATH") )
    define("ABSPATH", dirname(__FILE__) . "/");

require_once(ABSPATH . "wp-settings.php");

第二个,router.php ,它告诉 PHP 内置的服务器怎么运行 Wordpress:

<?php

$root = $_SERVER["DOCUMENT_ROOT"];
chdir($root);
$path = "/".ltrim(parse_url($_SERVER["REQUEST_URI"])["path"],"/");
set_include_path(get_include_path().":".__DIR__);
if(file_exists($root.$path))
{
    if(is_dir($root.$path) && substr($path,strlen($path) - 1, 1) !== "/")
        $path = rtrim($path,"/")."/index.php";
    if(strpos($path,".php") === false) return false;
    else {
        chdir(dirname($root.$path));
        require_once $root.$path;
    }
}else include_once "index.php";

这些配置文件就绪后,在你的 Wordpress 目录里面执行 fig up 指令,Fig 就会拉取镜像再创建我们所需要的镜像,然后启动 web 和数据库容器。 接着访问 docker 守护进程监听的 8000 端口就能看你的 Wordpress 网站了。(如果你有使用 boot2docker ,执行 boot2docker ip ,就会看到它的地址)。

阅读全文
以上是58编程为你收集整理的docker wordpress Docker Fig实战 wordpress全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
© 2024 58编程 58biancheng.com 版权所有 联系我们
桂ICP备12005667号-32 Powered by CMS