はじめに

本章では、Amazon Lightsailを使用してOmeka Classicをインストールする手順を解説します。Omeka Classicは、デジタルコレクションの構築・公開に広く利用されているオープンソースのWebアプリケーションです。後続の章で導入するIIIF Toolkitプラグインと組み合わせることで、IIIF対応のアノテーション付与環境を構築できます。

Amazon Lightsailの準備

Amazon Lightsailは、AWSが提供する軽量なVPS(仮想プライベートサーバ)サービスです。月額固定料金で利用でき、小規模なデジタルアーカイブ環境の構築に適しています。

インスタンスの作成

  1. AWS Lightsail コンソールにアクセスします
  2. 「インスタンスの作成」をクリックします
  3. 以下の設定を行います:
    • リージョン: 東京(ap-northeast-1)を推奨
    • プラットフォーム: Linux/Unix
    • ブループリント: OS のみ > Ubuntu 20.04 LTS
    • インスタンスプラン: 1GB RAM以上を推奨($5/月〜)

静的IPの割り当て

インスタンスの作成後、静的IPアドレスを割り当てます。これにより、インスタンスを再起動してもIPアドレスが変わりません。

# Lightsailコンソールの「ネットワーキング」タブから
# 静的IPを作成し、インスタンスにアタッチします

システム要件とパッケージのインストール

Omeka Classicの動作には以下の環境が必要です:

  • PHP: 7.4以上(8.0推奨)
  • MySQL: 5.7以上
  • Apache: 2.4以上(mod_rewrite有効)
  • ImageMagick: 画像処理用

初期設定スクリプト

SSHでインスタンスに接続し、以下のコマンドを実行して必要なパッケージをインストールします。

#!/bin/bash
# システムの更新
sudo apt update && sudo apt upgrade -y

# Apache, PHP, MySQLのインストール
sudo apt install -y apache2 mysql-server php php-mysql php-xml php-mbstring php-zip php-gd php-curl

# ImageMagickのインストール
sudo apt install -y imagemagick

# Apache mod_rewriteの有効化
sudo a2enmod rewrite
sudo systemctl restart apache2

PHPの設定

php.iniファイルを編集し、アップロード上限などを調整します。

sudo nano /etc/php/8.0/apache2/php.ini

以下の項目を変更します:

upload_max_filesize = 64M
post_max_size = 128M
memory_limit = 256M
max_execution_time = 300

MySQLデータベースの作成

Omeka Classic用のデータベースとユーザを作成します。

sudo mysql -u root

# MySQL内で以下を実行
CREATE DATABASE omeka CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'omeka'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON omeka.* TO 'omeka'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Omeka Classicのインストール

ファイルのダウンロードと配置

# Omeka Classicのダウンロード
cd /tmp
wget https://github.com/omeka/Omeka/releases/download/v3.1.2/omeka-3.1.2.zip
unzip omeka-3.1.2.zip

# Apacheのドキュメントルートに配置
sudo mv omeka-3.1.2 /var/www/html/omeka
sudo chown -R www-data:www-data /var/www/html/omeka

データベース接続の設定

db.iniファイルを編集してデータベースの接続情報を設定します。

sudo nano /var/www/html/omeka/db.ini
[database]
host     = "localhost"
username = "omeka"
password = "your_password"
dbname   = "omeka"
prefix   = "omeka_"
charset  = "utf8"
;port     = ""

Apacheの設定

.htaccessが正しく動作するよう、Apacheの設定ファイルを編集します。

sudo nano /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
    DocumentRoot /var/www/html/omeka
    <Directory /var/www/html/omeka>
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

設定を反映します:

sudo systemctl restart apache2

初期設定

ブラウザからサーバのIPアドレスにアクセスすると、Omeka Classicのインストールウィザードが表示されます。以下の情報を入力します:

  • サイト名: 任意のサイト名
  • 管理者ユーザ名: admin用のユーザ名
  • 管理者パスワード: 強固なパスワード
  • 管理者メールアドレス: 管理者の連絡先

インストールが完了すると、管理画面(/admin)にアクセスできるようになります。

SSL化(Let’s Encrypt)

本番運用ではHTTPS化が必須です。Let’s Encryptを使って無料のSSL証明書を取得できます。

# Certbotのインストール
sudo apt install -y certbot python3-certbot-apache

# SSL証明書の取得と設定
sudo certbot --apache -d your-domain.example.com

まとめ

以上で、Amazon Lightsail上にOmeka Classicの基本環境が構築できました。次章では、この環境にIIIF Toolkitプラグインをインストールし、IIIF対応のアノテーション機能を追加する手順を解説します。

Amazon Lightsailを使ったインストールの詳細なスクリプトについては、以下の記事も参考にしてください。

関連記事