femiwiki / docker-mediawiki

:whale: Dockerized Femiwiki's mediawiki server
Other
33 stars 7 forks source link
docker-compose docker-image server wiki

페미위키 미디어위키 서버 Container Registry Github checks Status

[!IMPORTANT]
This docker image is specifically designed for the needs of FemiWiki, contains FemiWiki-specific configurations and includes arbitrary MediaWiki extensions. It is not recommended to use this image for general purposes. We recommend using the Docker official image for MediaWiki.

한국의 페미니즘 위키인 femiwiki.com에 사용되는 미디어위키 도커 이미지입니다. Dockerfile, 테스트용 도커 컴포즈 파일 등 다양한 코드를 담고있습니다.

Usage of Docker Image

페미위키를 위한 PHP-FPM 서버이며 동일한 이미지로 Caddy 웹 서버를 실행할 수도 있습니다. 다음 예시 Compose file를 참고해 주세요. docker-compose.yml에서 실행 가능한 개발용 전체 예시를 볼 수 있습니다.

fastcgi:
  image: ghcr.io/femiwiki/mediawiki
http:
  image: ghcr.io/femiwiki/mediawiki
  command: caddy run
  ports:
    - 80:80
  volumes:
    - ./path/to/Caddyfile:/srv/femiwiki.com/Caddyfile:ro

MediaWiki

다음 환경 변수를 설정할 수 있습니다.

/a에 위치한 LocalSettings.php 파일이나 site-list.xml 파일은 테스트 목적에 따라 교체할 수 있습니다.

Caddy

Caddy를 실행할 경우에는 Caddyfile을 /srv/femiwiki.com/Caddyfile로 마운트하고 caddy run을 커맨드로 사용하여야 합니다. Usage of Docker Image를 참고하세요. 파일 마운트의 경우 일부 텍스트 편집기로 인한 편집이 무시될 수 있음을 주의하세요. (https://github.com/moby/moby/issues/15793)

./caddy/Caddyfile.dev:/srv/femiwiki.com/Caddyfile:ro

Usage of Docker Compose file

Docker Swarm 혹은 Docker Composer을 이용해, 아래와 같이 간편하게 페미위키를 로컬에서 실행할 수 있습니다. 데이터베이스와 memcached 등 미디어위키에 필요한 서비스들이 실행됩니다.

docker swarm init

cp development/secrets.php.example development/secrets.php
cp dockers/mediawiki/LocalSettings.php development/
cp dockers/femiwiki/Hotfix.php development/

# In case of Docker swarm
docker stack deploy --prune -c docker-compose.yml mediawiki
# If you want some tweaks
docker stack deploy --prune -c docker-compose.yml -c docker-compose.override.yml mediawiki
# In case of Docker-compose
docker-compose -f docker-compose.yml up

브라우저에서 http://127.0.0.1:8080을 방문할 수 있습니다.

Build

페미위키 개발하실 때엔 아래 커맨드들을 참고해주세요.

# 도커이미지 빌드
docker build -t femiwiki/mediawiki:dev .
# 수정된 도커이미지를 실행할때엔 아래와 같이
docker service update --force femiwiki_fastcgi

# configs/LocalSettings.php 검사
composer install
composer test
# configs/LocalSettings.php 자동 교정
composer fix

 


The source code of femiwiki/mediawiki is primarily distributed under the terms of the GNU Affero General Public License v3.0 or any later version. See COPYRIGHT for details.