无法使用反向代理后面的 wp-cli 生成的用户 wordpress 登录
Cannot login with wp-cli generated user wordpress behind reverse proxy
大家好,我在此处制作了一个自定义 wordpress 图像:https://github.com/ellakcy/wordpressWithPlugins
在入口点脚本上,我使用 wp-cli 来生成自定义用户以便预安装插件。但是我无法使用wp-cli生成的用户登录到控制面板。
你知道如何解决吗?
脚本的入口点如下:https://github.com/ellakcy/wordpressWithPlugins/blob/master/docker-entrypoint.sh
我 运行 带有这些命令的容器:(用于开发目的)
docker run --name wpdb -e MYSQL_ROOT_PASSWORD=1234 -d mariadb
docker run --name mywordpress --link wpdb:mysql -p 8080:80 -ti wp
我使用 apache 作为反向代理来访问 mywordpress 容器中的 wordpress 运行ning:
<VirtualHost *:80>
ProxyPass / http://172.17.0.3/
ProxyPassReverse http://172.17.0.3/ /
</Virtualhost>
(代替 172.17.0.3 可以是容器的 ip 运行ning wordpress)
编辑 1
我通过设置网络成功登录:
docker network create --subnet="172.19.0.0/16" wordpress_default
并为容器设置自定义 ips。 (我也设置了一些环境变量。)
RUN MYSQL/MARIADB
docker run --name wpdb --net wordpress_default --ip 172.19.0.2 -e MYSQL_ROOT_PASSWORD=1234 -d mariadb
run wordpress docker with some extra enviiromental variables
docker run --name mywordpress --net wordpress_default --ip 172.19.0.3 --link wpdb:mysql -e WORDPRESS_ADMIN_PASSWORD=1234 -e WORDPRESS_ADMIN_EMAIL=pc_magas@openmailbox.org -e WORDPRESS_URL=172.19.0.3 -p 8080:80 -ti wp
并通过第二个命令给出的 ip 访问 wordpress 站点。但是我仍然有问题使用本地apache 运行ning作为反向代理。
最后只需手动将机器的 ip 设置为 url 就好了。
docker run --name wpdb --net wordpress_default --ip 172.19.0.2 -e MYSQL_ROOT_PASSWORD=1234 -d mariadb
run wordpress docker with some extra enviiromental variables
docker run --name mywordpress --net wordpress_default --ip 172.19.0.3 --link wpdb:mysql -e WORDPRESS_ADMIN_PASSWORD=1234 -e WORDPRESS_ADMIN_EMAIL=pc_magas@openmailbox.org -e WORDPRESS_URL=172.19.0.3 -p 8080:80 -ti wp
我所要做的就是将以下虚拟主机设置为我的 apache:
<VirtualHost *:80>
RequestHeader set X-Forwarded-Proto "http"
ProxyPass / http://172.19.0.3/
ProxyPassReverse http://172.19.0.3/ /
</Virtualhost>
(生产可能需要一些改动)
大家好,我在此处制作了一个自定义 wordpress 图像:https://github.com/ellakcy/wordpressWithPlugins
在入口点脚本上,我使用 wp-cli 来生成自定义用户以便预安装插件。但是我无法使用wp-cli生成的用户登录到控制面板。
你知道如何解决吗?
脚本的入口点如下:https://github.com/ellakcy/wordpressWithPlugins/blob/master/docker-entrypoint.sh
我 运行 带有这些命令的容器:(用于开发目的)
docker run --name wpdb -e MYSQL_ROOT_PASSWORD=1234 -d mariadb docker run --name mywordpress --link wpdb:mysql -p 8080:80 -ti wp
我使用 apache 作为反向代理来访问 mywordpress 容器中的 wordpress 运行ning:
<VirtualHost *:80>
ProxyPass / http://172.17.0.3/
ProxyPassReverse http://172.17.0.3/ /
</Virtualhost>
(代替 172.17.0.3 可以是容器的 ip 运行ning wordpress)
编辑 1
我通过设置网络成功登录:
docker network create --subnet="172.19.0.0/16" wordpress_default
并为容器设置自定义 ips。 (我也设置了一些环境变量。)
RUN MYSQL/MARIADB
docker run --name wpdb --net wordpress_default --ip 172.19.0.2 -e MYSQL_ROOT_PASSWORD=1234 -d mariadb
run wordpress docker with some extra enviiromental variables
docker run --name mywordpress --net wordpress_default --ip 172.19.0.3 --link wpdb:mysql -e WORDPRESS_ADMIN_PASSWORD=1234 -e WORDPRESS_ADMIN_EMAIL=pc_magas@openmailbox.org -e WORDPRESS_URL=172.19.0.3 -p 8080:80 -ti wp
并通过第二个命令给出的 ip 访问 wordpress 站点。但是我仍然有问题使用本地apache 运行ning作为反向代理。
最后只需手动将机器的 ip 设置为 url 就好了。
docker run --name wpdb --net wordpress_default --ip 172.19.0.2 -e MYSQL_ROOT_PASSWORD=1234 -d mariadb
run wordpress docker with some extra enviiromental variables
docker run --name mywordpress --net wordpress_default --ip 172.19.0.3 --link wpdb:mysql -e WORDPRESS_ADMIN_PASSWORD=1234 -e WORDPRESS_ADMIN_EMAIL=pc_magas@openmailbox.org -e WORDPRESS_URL=172.19.0.3 -p 8080:80 -ti wp
我所要做的就是将以下虚拟主机设置为我的 apache:
<VirtualHost *:80>
RequestHeader set X-Forwarded-Proto "http"
ProxyPass / http://172.19.0.3/
ProxyPassReverse http://172.19.0.3/ /
</Virtualhost>
(生产可能需要一些改动)