如何使用docker mediawiki镜像修复数据库连接错误



我正在docker容器中运行媒体wiki 1.35.2,并得到错误

Original exception: [733e024ba16cc597716794fe] / WikimediaRdbmsDBConnectionError   from line 1420 of /var/www/html/includes/libs/rdbms/loadbalancer/LoadBalancer.php: Cannot access the database: Unknown error ()
Backtrace:
#0 /var/www/html/includes/libs/rdbms/loadbalancer/LoadBalancer.php(934): WikimediaRdbmsLoadBalancer->reportConnectionError()

LocalSettings.php

$wgDBtype = "postgres"; 
$wgDBserver = "database";
$wgDBname = "my_wiki"; 
$wgDBuser = "wikiuser"; 
$wgDBpassword = "xxx"; 
$wgDBport           = "5432";
//$wgDBmwschema       = "mediawiki";
//$wgDBts2schema      = "public";

我可以从mediawiki容器内部通过psql连接到数据库。错误消息独立于数据库类型(也尝试了mariadb-fromhttps://hub.docker.com/_/mediawiki)或者即使我关闭了postgresql12容器我也尝试过在LocalSettings.pp.中使用IP而不是主机名

(类似于带有docker的Mediawiki。可以';t定位LocalSettings.php,无法访问数据库(

码头工人组成:

mediawiki:
image: mediawiki:latest
restart: unless-stopped
ports:
- 8080:80
volumes:
- /var/www/html/images
# After initial setup, download LocalSettings.php to the same directory as
# this yaml and uncomment the following line and use compose to restart
# the mediawiki service
- ./wiki/LocalSettings.php:/var/www/html/LocalSettings.php
networks:
default:
external:
name:  ....

(links: is deprecated)

docker映像似乎缺少一些数据库包。因此,我添加了它们来扩展mediawiki docker镜像。

  • https://www.mediawiki.org/wiki/MediaWiki-Docker/Configuration_recipes/Alternative_databases
  • https://github.com/docker-library/php/issues/221
  • https://gist.github.com/ben-albon/3c33628662dcd4120bf4

最新更新