🐈

Raspberry Pi 4でDokuWikiを動かす!簡単セットアップガイド

2025/02/11に公開

1. はじめに

記事の目的

Raspberry Pi 4にDokuWikiを導入し、手軽に備忘録を管理できる環境を構築することを目的とします。基本セットアップからインストール、初期設定までを解説します。

DokuWikiとは?

DokuWikiは、データベースを前提としない、使い易く汎用性の高いオープンソースのウィキソフトウェアです。​きれいで可読性の高い構文は利用者に愛されています。 管理・バックアップ・統合化が容易なところは管理者に好まれます。 DokuWiki はアクセス制御機能と認証への接続機能を内蔵しているので、特に企業環境内での利用に向いています。 活気に満ちたコミュニティから寄与された膨大なプラグインによって、伝統的なウィキ用途を超えた広い範囲の使用方法が可能です。
https://www.dokuwiki.org/ja:dokuwiki

2. 環境

Raspberry Pi

https://www.amazon.co.jp/dp/B0891RC99L?ref_=ppx_hzsearch_conn_dt_b_fed_asin_title_1#customerReviews

OS

/etc/os-release

root@raspberrypi:~# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

uname

root@raspberrypi:~# uname -a
Linux raspberrypi 6.6.51+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.6.51-1+rpt3 (2024-10-08) aarch64 GNU/Linux

3. Apache2 + PHPのインストール

DokuWiki on Debian, Ubuntu and derivative Distributions
https://www.dokuwiki.org/install:debian

root@raspberrypi:~# apt-get update -y
root@raspberrypi:~# apt-get upgrade -y
root@raspberrypi:~# apt-get install -y php libapache2-mod-php php-xml php-json php-mbstring php-zip php-intl php-gd

Apache2サービスの再起動

root@raspberrypi:~# systemctl restart apache2.service
root@raspberrypi:~# systemctl status apache2.service

4. DokuWikiのインストール

ユーザーの作成

「dokuwiki」ユーザーの作成

root@raspberrypi:~# useradd -m dokuwiki -s /bin/bash
root@raspberrypi:~# cat /etc/passwd | grep 'dokuwiki'
dokuwiki:x:1001:1001::/home/dokuwiki:/bin/bash

ユーザーパスワードの設定

root@raspberrypi:~# passwd dokuwiki
New password:
Retype new password:
passwd: password updated successfully

DokuWikiのダウンロードと配置 (/home/dokuwiki/)

DokuWikiの安定版をダウンロード

dokuwiki@raspberrypi:~ $ wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz

解凍

dokuwiki@raspberrypi:~ $ tar -xvf dokuwiki-stable.tgz
dokuwiki@raspberrypi:~ $ ls -l
total 4116
drwxr-xr-x 8 dokuwiki dokuwiki    4096 Aug  5  2024 dokuwiki-2024-02-06b
-rw-r--r-- 1 dokuwiki dokuwiki 4206676 Aug  5  2024 dokuwiki-stable.tgz

ディレクトリ名の変更

dokuwiki@raspberrypi:~ $ mv ./dokuwiki-2024-02-06b/ public_html/

logsディレクトリの作成

dokuwiki@raspberrypi:~ $ mkdir -p ./public_html/logs/

パーミッションの設定

dokuwiki@raspberrypi:~ $ sudo chown -R www-data:www-data /home/dokuwiki/public_html/
dokuwiki@raspberrypi:~ $ sudo chmod -R 755 /home/dokuwiki/public_html/logs/

Apacheの設定変更 (VirtualHost)

dokuwiki@raspberrypi:~ $ sudo vim /etc/apache2/sites-available/dokuwiki.conf
<VirtualHost *:80>
    DocumentRoot /home/dokuwiki/public_html

    <Directory /home/dokuwiki/public_html>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog /home/dokuwiki/public_html/logs/dokuwiki-error.log
    CustomLog /home/dokuwiki/public_html/logs/dokuwiki-access.log combined
</VirtualHost>

dokuwiki.confの有効化

dokuwiki@raspberrypi:~ $ sudo a2ensite dokuwiki.conf
Enabling site dokuwiki.
To activate the new configuration, you need to run:
  systemctl reload apache2
dokuwiki@raspberrypi:~ $ ls -l /etc/apache2/sites-enabled/dokuwiki.conf
lrwxrwxrwx 1 root root 32 Feb 10 19:48 /etc/apache2/sites-enabled/dokuwiki.conf -> ../sites-available/dokuwiki.conf

サイトにアクセス
http://<RaspberryPiのIPアドレス>/
ApacheのWelcomeページが表示される。

読み込まれている設定ファイルの確認

dokuwiki@raspberrypi:~ $ sudo apache2ctl -S
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.            1. Set the 'ServerName' directive globally to suppress this message
VirtualHost configuration:
*:80                   is a NameVirtualHost
         default server 127.0.1.1 (/etc/apache2/sites-enabled/000-default.conf:1)
         port 80 namevhost 127.0.1.1 (/etc/apache2/sites-enabled/000-default.conf:1)
         port 80 namevhost 127.0.1.1 (/etc/apache2/sites-enabled/dokuwiki.conf:1)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex default: dir="/var/run/apache2/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33
Group: name="www-data" id=33

000-default.conf(Apacheのデフォルト仮想ホスト設定ファイル)が優先的に読み込まれ、dokuwiki.confDocumentRootが上書きされている。

000-default.confを無効化

dokuwiki@raspberrypi:~ $ sudo a2dissite 000-default.conf
Site 000-default disabled.
To activate the new configuration, you need to run:
  systemctl reload apache2

設定を反映させるために、Apache2をリロードして設定ファイルを再読み込みする。

dokuwiki@raspberrypi:~ $ sudo systemctl reload apache2.service

再度サイトにアクセス
http://<RaspberryPiのIPアドレス>/

5. DokuWikiの初期設定

Webインターフェースからセットアップ

DokuWikiインストーラーにアクセス
http://<RaspberryPiのIPアドレス>/install.php
右上の「使用言語を選択」のドロップダウンメニューから「ja」を選択する。

管理者ユーザーの作成


スーパーユーザー: 管理者アカウントのユーザー名を設定
メールアドレス: 管理者アカウントに関連付けるメールアドレス
パスワード: ユーザー名に対応するパスワードを設定
ACL初期設定: Wikiを編集できる人の範囲を設定

ライセンスの選択

よく分からなければ一番下の「ライセンス情報を表示しません。」を選択して問題ない。

設定が完了したら「保存」をクリックする。

install.phpは不要になるので削除して構わない。

dokuwiki@raspberrypi:~ $ sudo rm ./public_html/install.php

6. まとめ

  • DokuWikiは、データベースを使用せずに動作するオープンソースのWikiソフトウェアである。
  • シンプルで直感的な操作が可能で、個人やチームの情報管理に適している。
  • 今回は、Raspberry Pi 4にDokuWikiの安定版をインストールし、手軽に備忘録やドキュメント管理ができる環境を構築した。
GitHubで編集を提案

Discussion