如何实际安装 mediawiki 并使用 docker 运行?

如何实际安装 mediawiki 并使用 docker 运行?

我试过

媒体维基 docker

它说:

首次运行时,容器将不包含 LocalSettings.php

但是我不明白如何获取此文件,LocalSettings.php我该输入什么才能获取此文件?以及如何替换它?

答案1

来自的 docker 镜像媒体维基 docker用途Volumes在页面描述中明确给出。对于带有卷的 Docker 镜像,当您下载镜像时,您也需要在主机上创建类似的卷,因为下载 docker 镜像不会下载 docker 卷。

正如该页面所述,您需要在主机中创建一个卷并放置该 LocalSettings.php 文件,然后创建一个容器:

docker stop $CONFIG_CONTAINER
docker run -v /data/wiki:/data -d nickstenning/mediawiki

答案2

1.- 我们需要获取docker的名称

docker ps

2.- 获取docker容器内的shell

docker exec -it <dockername> /bin/bash

/var/www/html# ls -l
total 1576
-rw-rw-r--  1     1000     1000     168 Sep 24 22:22 CODE_OF_CONDUCT.md
-rw-rw-r--  1     1000     1000   19421 Nov  4  2019 COPYING
-rw-rw-r--  1     1000     1000   13101 Sep 24 22:22 CREDITS
-rw-rw-r--  1     1000     1000      95 Nov  4  2019 FAQ
-rw-rw-r--  1     1000     1000 1151718 Sep 24 22:22 HISTORY
-rw-rw-r--  1     1000     1000    3581 Sep 24 22:22 INSTALL
-rw-rw-r--  1     1000     1000    1525 Sep 24 22:22 README.md
-rw-rw-r--  1     1000     1000   84664 Sep 25 14:36 RELEASE-NOTES-1.35
-rw-rw-r--  1     1000     1000     199 Nov  4  2019 SECURITY
-rw-rw-r--  1     1000     1000   12142 Sep 24 22:22 UPGRADE
-rw-rw-r--  1     1000     1000    4490 Sep 24 22:22 api.php
-rw-rw-r--  1     1000     1000  156532 Sep 24 22:22 autoload.php
drwxr-xr-x  2 www-data www-data    4096 Sep 30 01:19 cache
-rw-rw-r--  1     1000     1000    4719 Sep 24 22:22 composer.json
-rw-rw-r--  1     1000     1000     102 Nov  4  2019 composer.local.json-sample
drwxr-xr-x  5 root     root        4096 Sep 30 01:19 docs
drwxr-xr-x 30 www-data www-data    4096 Sep 30 01:19 extensions
drwxr-xr-x  1 www-data www-data    4096 Oct  1 10:47 images
-rw-rw-r--  1     1000     1000    8245 Sep 24 22:22 img_auth.php
drwxr-xr-x 83 root     root        4096 Sep 30 01:19 includes
-rw-rw-r--  1     1000     1000    1977 Sep 24 22:22 index.php
-rw-rw-r--  1     1000     1000    1428 Sep 24 22:22 jsduck.json
drwxr-xr-x  6 root     root        4096 Sep 30 01:19 languages
-rw-rw-r--  1     1000     1000    1951 Sep 24 22:22 load.php
drwxr-xr-x 14 root     root       12288 Sep 30 01:19 maintenance
drwxr-xr-x  4 root     root        4096 Sep 30 01:19 mw-config
-rw-rw-r--  1     1000     1000    4610 Sep 24 22:22 opensearch_desc.php
drwxr-xr-x  5 root     root        4096 Sep 30 01:19 resources
-rw-rw-r--  1     1000     1000     998 Sep 24 22:22 rest.php
drwxr-xr-x  5 www-data www-data    4096 Sep 30 01:19 skins
drwxr-xr-x 10 root     root        4096 Sep 30 01:19 tests
-rw-rw-r--  1     1000     1000   23408 Sep 24 22:22 thumb.php
-rw-rw-r--  1     1000     1000    1439 Sep 24 22:22 thumb_handler.php
drwxr-xr-x 16 root     root        4096 Sep 30 01:19 vendor
root@e532ae3bb563:/var/www/html# cat > LocalSettings.php

3.- 创建一个文件并将 LocalSettings.php 的内容复制到目录中

cat > LocalSettings.php

(并使用终端粘贴下载的 LocalSettings 的内容,您可以使用某些编辑器,但使用此命令粘贴内容和 ctrl+c 应该可以工作)。

答案3

这是旧的,虽然我之前在复制时没有取得太大成功LocalSettings.php。您只需传入额外的环境变量,LocalSettings.php数据目录中就会创建一个。然后您只需将您的自定义更改放入conf/CustomSettings.php

使用以下环境变量来生成LocalSettings.php

  • -e MEDIAWIKI_ADMIN_USER=(默认为admin;配置默认管理员用户名)

  • -e MEDIAWIKI_ADMIN_PASS=(默认为rosebud;配置默认管理员密码)

https://github.com/wikimedia/mediawiki-docker

我至少导入了一个以前的数据库以使帖子可见,使用生成的配置并添加我的自定义设置。

答案4

首次启动容器后,完成安装步骤后,您将看到一个包含LocalSettings.php可下载文件的页面。

对我有用的是下载这个文件里面容器已经存在,如下所示:

  1. 在容器内打开一个终端(您可以使用 Docker Desktop 通过单击容器视图中的 CLI 按钮来执行此操作或运行命令docker exec -it <container name> /bin/sh
  2. 在终端内,运行命令:curl http://0.0.0.0:80/mw-config/index.php?localsettings=1 > LocalSettings.php

就是这样!它会将生成的文件下载到您的根文件夹中,这是终端在启动时打开的位置。

相关内容