搭建环境机器:本地小主机n3540系统:debian11搭建方式:docker+wordpress(php7.4版本)+nginx+Ripro-v5 7.13n3540安装debian11[1]docker环境部署
[2]项目文件创建创建项目目录mkdir -p /root/data/docker_data/wordpress_ripro移动到项目目录下cd /root/data/docker_data/wordpress_ripro
创建文件touch docker-compose.yml nginx.conf php.ini uploads.ini复制代码到对应的文件中docker-compose文件version:3.0services:
db:image:mysql:8.0container_name:wordpress-dbrestart:unless-stoppedcommand:--max-binlog-size=200M--expire-logs-days=2
environment:MYSQL_ROOT_PASSWORD:aPvpUn4d29www# 可修改MYSQL_DATABASE:wordpressMYSQL_USER:wordpress# 可修改MYSQL_PASSWORD:
aPvpUn4d29# 可修改volumes:-./db:/var/lib/mysqlnetworks:-defaultapp:image:wordpress:5.8-fpm# 使用带 PHP 7.4 的 WordPress 版本
container_name:wordpress-apprestart:unless-stoppedenvironment:WORDPRESS_DB_HOST:dbWORDPRESS_DB_NAME:wordpress
WORDPRESS_DB_USER:wordpressWORDPRESS_DB_PASSWORD:aPvpUn4d29# 与MYSQL_PASSWORD一致volumes:-./app:/var/www/html
-./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini#解除上传文件限制-./php.ini:/usr/local/etc/php/php.ini#php配置文件
depends_on:-dbnetworks:-defaultnginx:image:nginx:alpine# 使用 Nginx 作为 Web 服务器container_name:wordpress-nginx
restart:unless-stoppedports:-8989:80# 冒号左边可以更改,但是后续要访问IP:改动的端口例如改了9999,就是IP:9999 。
volumes:-./nginx.conf:/etc/nginx/nginx.conf# 自定义 Nginx 配置-./app:/var/www/html# 共享 WordPress 文件depends_on:
-appnetworks:-defaultnetworks:default:name:wordpress_networknginx.conf配置文件worker_processes 1;events {
worker_connections 1024;}http { include /etc/nginx/mime.types; default_type application/octet-stream;
sendfile on; keepalive_timeout 65; # 设定最大上传文件大小 client_max_body_size 64M; server {
listen 80; server_name localhost; root /var/www/html; index index.php index.html index.htm;
location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ {
include fastcgi_params; fastcgi_pass wordpress-app:9000; # 指定 PHP-FPM 容器 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php; } location ~ /\.ht { deny all; }
}}uploads.ini文件upload_max_filesize=20Mpost_max_size=20Mmemory_limit=50Mupload_max_filesize:这个配置项控制允许上传的最大文件大小,设置为 20MB。
post_max_size:这个配置项控制通过 POST 请求传递的数据的最大大小(包括文件上传),设置为 20MBmemory_limit:这个配置项控制 PHP 脚本可以使用的最大内存,设置为 50MB。
php.ini文件extension=swoole_loader_74_nts.so运行项目在/root/data/docker_data/wordpress_ripro目录下执行docker-compose up -d
文件目录查看服务运行状态 docker-compose ps
服务状态安装wordpress浏览器地址栏输入IP:8989访问站点;选择简体中文点击继续
安装wordpress把密码复制下来,其他自定义,点击安装wordpress
安装wordpress步骤2点击登陆
安装wordpress步骤3输入用户名和密码
输入用户名名和密码安装Ripro-v5 主题进入网站后台依次点击外观,主题,安装主题
安装主题依次点击上传主题,选择文件,选择主题文件,打开
安装主题然后点击立即安装安装成功,点击启用
启用主题安装php扩展点击下载 unix PHP7.4 Swoole Loader扩展文件
安装扩展把下载好的swoole_loader_74_nts.so上传到服务器的项目目录下
上传扩展文件到项目目录将php扩展文件复制到容器中:docker cp /root/data/docker_data/wordpress_ripro/swoole_loader_74_nts.so wordpress-app:/usr/
local/lib/php/extensions/no-debug-non-zts-20190902/swoole_loader_74_nts.sodocker cp命令解释:docker cp:docker cp
命令用于在宿主机和 Docker 容器之间复制文件或目录可以将文件从宿主机复制到容器,也可以从容器复制到宿主机/root/data/docker_data/wordpress_ripro/swoole_loader_74_nts.so。
:这是宿主机上的文件路径,表示你在本地系统中的某个目录下的文件 swoole_loader_74_nts.so该文件是一个 PHP 扩展文件,通常用于加载 Swoole 扩展,适用于 PHP 7.4 的非线程安全 (NTS) 版本。
wordpress-app:这是 Docker 容器的名称或 IDdocker cp 命令需要知道要把文件复制到哪个容器中在这个例子中,容器的名称是 wordpress-app:/usr/local/lib/php/extensions/no-debug-non-zts-20190902/swoole_loader_74_nts.so。
:这是文件在容器内的目标路径docker cp 将文件复制到容器内的这个位置/usr/local/lib/php/extensions/no-debug-non-zts-20190902/ 是 PHP 扩展的目录,。
no-debug-non-zts-20190902 表示 PHP 7.4 的扩展目录版本swoole_loader_74_nts.so:在容器中,文件将被放置在这个路径下,并且保持相同的文件名总之这条命令的目的是将宿主机 。
/root/data/docker_data/wordpress_ripro/ 目录下的 swoole_loader_74_nts.so 文件复制到名为 wordpress-app 的 Docker 容器的路径
/usr/local/lib/php/extensions/no-debug-non-zts-20190902/ 中这通常用于在容器中安装或更新 PHP 扩展,如 Swoole loader,尤其是在容器化的 PHP 环境中运行 WordPress 或其他 PHP 应用时。
**注意:**docker cp命令的/usr/local/lib/php/extensions/no-debug-non-zts-20190902要根据安装扩展那张图第二个步骤里面的路径做相应更改
复制扩展到容器内重启服务docker-compose restart app再次访问ip:8989
成功搭建激活主题把ripro-v5-active.php上传到服务器的项目目录下执行:docker cp /root/data/docker_data/wordpress_ripro/ripro-v5-active.php wordpress-app:/var/www/html/ripro-v5-active.php。
进入 WordPress 容器,确保文件已成功复制到 /var/www/html/ 目录:docker exec -it wordpress-app bashls /var/www/html/能看到 ripro-v5-active.php
文件在列表中。复制完成后,能够通过浏览器访问这个 PHP 文件,URL 格式如下:http://:8989/ripro-v5-active.php
成功激活其他相关命令:进入 wordpress-app 容器:运行以下命令进入 WordPress 容器的终端:docker exec -it wordpress-app bash查看 PHP 版本:进入容器后,使用以下命令查看 PHP 版本:
php -v这会显示当前容器中安装的 PHP 版本确认 swoole_loader74.so 扩展是否正确安装并加载php -m | grep swoole如果没有看到 swoole 扩展,说明加载失败,可能是路径错误或 。
php.ini 配置不正确退出容器:完成查看后,输入 exit 来退出容器的 Shell:exit结语相关资料获取方式:后台回复riprov5主题源码源自网络,安全性自行检测,仅供学习使用参考资料[1]。
n3540安装debian11: https://yilancn.top/posts/01b4e1a9a784/[2]docker环境部署: https://yilancn.top/posts/b59f3b919c93/
亲爱的读者们,感谢您花时间阅读本文。如果您对本文有任何疑问或建议,请随时联系我。我非常乐意与您交流。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。