как на самом деле установить mediawiki и запустить с docker?

как на самом деле установить mediawiki и запустить с docker?

Я пытался

докер mediawiki

там написано:

При первом запуске контейнер не будет содержать LocalSettings.php

Но я не понимаю, как это сделать, LocalSettings.phpчто мне ввести, чтобы получить этот файл? И как мне его заменить?

решение1

Образы докера издокер mediawikiиспользует Volumes, что четко указано в описании на странице. В случае образов Docker с томами при загрузке образа вам необходимо создать аналогичный том на вашем хосте, поскольку загрузка образа Docker не загружает том Docker.

Как указано на этой странице, вам необходимо создать том на хосте и поместить в него файл LocalSettings.php, а затем создать контейнер следующим образом:

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

решение2

1.- Нам нужно получить имя докера

docker ps

2.- Получите оболочку внутри контейнера Docker.

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

Вот и все! Сгенерированный файл будет загружен в корневую папку, где терминал откроется при запуске.

Связанный контент