Tag: wordpress

WordPress的可扩展云架构

我必须准备一个运行Wordpress + Woocommerce的网站,在两个月内突然出现stream量高峰。 我正在将其从共享主机移到云端。 我已经成功集装箱了Wordpress应用程序,并且有一个在OTC(Deutsche Telekom Cloud)工作的原型。 下面你可以看到当前体系结构的图片和下面的描述: 当前架构图 容器集群有1个节点。 该节点包含: Docker容器(1-100个实例)Web服务器CentOS + NGINX Docker容器(1-100)PHP引擎CentOS + PHP 7 – FPM Web应用程序文件存储在/ var / www / html(wordpress +所有内容)的此节点(主机)上,并可通过容器 数据库 RDS主数据库实例 RDS辅助实例 多达5个读取实例 负载平衡器(TCP 443,TCP 80) 所以我可以select我的节点规格(例如16个vCPU和32 GB RAM)。 我有一个选项来configuration自动缩放意味着新的docker实例将popup(最小1和最大100)当CPU使用率超过某一点。 理论上我的节点可以运行数十个docker容器实例。 问题 由于每个节点都有一个固定的虚拟硬件规格,所以在一个节点中将docker实例相乘是否有意义? 如果我想将多个节点添加到我的集群中,则无法在节点上本地存储内容文件。 修改源代码是不可能的,所以插件将在本地存储文件。 在哪里最好的存储networking应用程序和内容? (docker允许我从主机上“挂载”目录到容器,如何在容器内的节点之外使用存储?) 加载testing我的configuration的最佳方法是什么? 我要在configuration中注意哪些缺陷? PS我是一个.NET开发人员和LAMP,Wordpress和Docker环境对我来说是新的,所以也可能有一些基本的东西我不知道。

Docker-compose每次创build一个新的数据库,数据不会被保存

我正在做一些当地的WP开发。 每次我进行更改(如添加插件) 并运行: docker-compose up -d && docker-compose logs -f wordpress 它创build一个新的数据库和插件被删除很长时间,任何更改。 我可以每次在一个迁移插件中导出一个.wp文件,并再次导入,但是更好的方法是什么?

使用`npm`使用Docker构buildWordPress

我通常在wordpress-docker资源库中的Wordpress中运行我的应用程序。 这次我有一个需要在运行之前build立的项目,我不知道该怎么做。 基本上我需要运行两个命令。 npm install npm run production Dockerfile FROM lewg/hhvm EXPOSE 80 ADD https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar /usr/local/bin/wp RUN chmod +x /usr/local/bin/wp ADD webroot /srv/www CMD supervisord -e debug 泊坞窗,compose.yml web: build: . ports: – "8000:80" – "8001:9000" links: – db volumes: – ./webroot:/srv/www – ./uploads:/srv/www/uploads – /root/.wp-cli/cache environment: SITE_URL: http://localhost:8000 WP_DEBUG: 1 command: supervisord -e debug […]

无法使用Docker-Compose连接到NGINX

我只需要将我的开发环境转移到新的Mac上,并在新机器上安装Docker。 我正在使用docker-compose来托pipenginx的本地wordpress。 所有的容器都开始了,但是nginx容器拒绝工作。 所以我无法到达localhost:8000下的网站 我在旧电脑上有相同的configuration,运行顺畅。 我错过了什么? 所以,这是我的dockerfile: version: "2" services: mariadb: image: wodby/wordpress-mariadb environment: MYSQL_RANDOM_ROOT_PASSWORD: 1 MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress volumes: – ./docker-runtime/mariadb:/var/lib/mysql php: image: wodby/wordpress-php environment: PHP_SITE_NAME: dev PHP_HOST_NAME: localhost:8000 PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025 PHP_XDEBUG_ENABLED: 0 volumes: – ./:/var/www/html nginx: image: wodby/wordpress-nginx environment: NGINX_SERVER_NAME: localhost NGINX_UPSTREAM_NAME: php volumes_from: – php […]

从Docker容器提供WordPress静态文件

我有一个WordPress的Docker容器,并使用nginx作为主机上的反向代理。 WP容器在端口32776上为WordPress提供服务,我的nginxconfiguration在主机上是这样的: nginxconfiguration(主机) map $http_upgrade $connection_upgrade { default upgrade; '' close; } server { … location /blog { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:32776; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; } … } nginxconfigurationINSIDE Docker server { listen 0.0.0.0:80 default_server; listen [::]:80 default_server; root /var/www/html; # Add index.php […]

WordPress的4.8.1 Elasticsearch Elasticsearch Docker如何获得searchbuild议

我用NGINX PHP7 Maria DB和Elasticsearch创build了一个docker镜像。 所有的容器都在起作用。 我有一个全新的Wordpress安装与一些假文章(只是为了testing)和Elasticpress,也安装和configuration。 我能够连接Elasticpress Docker镜像并同步所有数据。 不过,我是Elasticsearch的新手,不知道我的search栏是否来自Elasticsearch的Auto Suggest 。 我无法find任何forms的信息,需要在WordPress中做这些事情。 我错过了什么吗? 我确定我是。 提前致谢

Docker + WordPress – 得到这个错误“致命错误:未捕获错误:调用未定义的函数mysql_connect()”

我正在使用Docker运行我的旧Wordpress项目。 在Docker上迁移后,我得到这个错误: 致命错误:未捕获错误:调用未定义函数mysql_connect()在/var/www/html/wp-includes/wp-db.php:1570堆栈跟踪:#0 / var / www / html / wp-includes / wp- db.php(658):wpdb-> db_connect()#1 /var/www/html/wp-includes/load.php(404):wpdb – > __ construct('wordpress_user','secret','wordpress_acade .. 。','academy-mysql:3 …')#2 /var/www/html/wp-settings.php(106):require_wp_db()#3 /var/www/html/wp-config.php( 122):require_once('/ var / www / html / w …')#4 /var/www/html/wp-load.php(37):require_once('/ var / www / html / w .. ')#5 /var/www/html/wp-blog-header.php(13):require_once('/ var / www / html / w …')#6 / var […]

使用jwilder / nginx-proxy的fpm错误:

TL; DR为什么这个WordPress的:最新的Dockerfile是可以与Nginx 的代理,但这一个不是WordPress的:FMP的Dockerfile ? 我怎样才能使用nginx-proxy wordpress:fpm图像 嗨, 我成功地用一些wordpress容器来使用nginx-proxy。 例如这个docker-compose.yml完美的工作: db: image: mariadb environment: – MYSQL_ROOT_PASSWORD=password volumes: – /home/stack/my_domain/bdd:/var/lib/mysql wordpress: image: wordpress links: – db:mysql environment: – VIRTUAL_HOST=my_domain.fr,www.my_domain.fr – LETSENCRYPT_HOST=www.my_domain.fr – LETSENCRYPT_EMAIL=contact@my_domain.fr env_file: – ./env volumes: – /home/stack/my_domain/wordpress:/var/www/html 但如果我使用的wordpress:fpm图像(而不是一个基于Apache的图像)我有502错误的网关错误,并在日志中的这条消息: nginx.1 | 2017/08/14 21:29:51 [error] 347#347:* 2447 connect()失败(111:Connection refused),连接上游时,客户端:86.222.20.31,服务器:www.my_domain.fr,请求: “GET / contact / HTTP / 2.0”,上行:“ http://172.17.0.14:80/contact/ […]

无法使用Docker Stack和Official WordPress Docker镜像访问正在运行的服务

我正在尝试使用官方的Wordpress Docker镜像部署一个组合文件。 我已经剥离我的撰写文件(stack.yml)到这个: version: '3.1' services: wordpress: image: wordpress ports: – 8080:80 environment: WORDPRESS_DB_PASSWORD_FILE: /run/secrets/db_password secrets: – db_password mysql: image: mysql:5.7 environment: MYSQL_ROOT_PASSWORD_FILE: /run/secrets/db_password secrets: – db_password secrets: db_password: file: db_password.txt 除了秘密之外,这几乎完全是在文档中给出的。 然后我运行$ docker stack deploy -c stack.yml wordpress 。 运行$ docker stack services wordpress确认两个服务都被复制并运行。 NAME MODE REPLICAS wordpress_wordpress replicated 1/1 wordpress_mysql replicated 1/1 但是,当我尝试在Chrome中从http://localhost:8080访问时,出现以下消息: […]

将主机nginx和msql与一个php5-fpm的docker容器连接起来

我有一个与Nginx / MySQL和php5-fpm运行的传统Wordpress安装,我必须将其移动到最新的VPS,其function为php7-fpm。 我想利用已经安装Nginx / MySQL的新主机VPS,并安装和使用一个容器来pipe理php5请求。 我从Docker Hub中取出了官方的php5-fpm镜像 docker pull php:5.6-fpm-alpine …然后我运行映像重新映射的端口9000,其中php5-fpm正在侦听,并加载wordpress根文件夹(不确定)和mysql套接字,没有-d标志为了看到日志生活: docker run –name phpFpm5.6 -p 127.0.0.1:9999:9000 -v /home/ubuntu/www/html:/var/www/html -v /var/run/mysqld/mysqld.sock:/tmp/mysql.sock php:5.6-fpm-alpine 这是控制台日志: [21-Aug-2017 12:36:19] NOTICE: fpm is running, pid 1 [21-Aug-2017 12:36:19] NOTICE: ready to handle connections 172.17.0.1 – 21/Aug/2017:12:37:09 +0000 "GET /index.php" 404 172.17.0.1 – 21/Aug/2017:12:39:30 +0000 "GET /index.php" 404 当我从浏览器请求索引页时,我得到一个404(未find)响应。 Nginx指令: […]