실제로 mediawiki를 설치하고 docker로 실행하는 방법은 무엇입니까?

실제로 mediawiki를 설치하고 docker로 실행하는 방법은 무엇입니까?

나는 노력했다

미디어위키 도커

그것은 말한다:

처음 실행하면 컨테이너에 LocalSettings.php가 포함되지 않습니다.

하지만 이 파일을 포함하는 방법을 이해할 수 없습니다. LocalSettings.php이 파일을 얻으려면 무엇을 입력해야 합니까? 어떻게 교체하나요?

답변1

도커 이미지는 다음과 같습니다.미디어위키 도커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 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

그게 다야! 생성된 파일을 루트 폴더에 다운로드합니다. 루트 폴더에서 터미널이 시작될 때 열립니다.

관련 정보