Amazon Lightsailを用いたOmeka Sサイトの構築(独自ドメイン+SSL化を含む)
更新履歴
- 2022/09/08 スクリプトの記述を最新化しました。
概要
Amazon Lightsailは以下のような説明がなされています。
Amazon Lightsail は、コンテナなどのクラウドリソースを予測可能な低価格で簡単に管理できる、使いやすい仮想プライベートサーバー (VPS) です。
今回は、このAmazon Lightsailを用いたOmeka Sの構築方法を紹介します。合わせて、データベースの公開にあたり一般的に求められる「独自ドメイン」「SSL」設定についても扱います。
Amazon Lightsail
インスタンスの作成
以下のページにアクセスします。
そして、以下の「Create Instance」ボタンをクリックします。
「Select a blueprint」において、「LAMP (PHP 7)」を選択します。
「Choose your instance plan」において、インスタンスプランを選択します。今回は最も低価格のプランを選びました。
起動したら、以下のインスタンスのページにアクセスして、「Connect using SSH」ボタンを押します。
以下の画面が表示されます。
Linux ip-172-26-5-202 4.19.0-19-cloud-amd64 #1 SMP Debian 4.19.232-1 (2022-03-07) x86_64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
___ _ _ _
| _ |_) |_ _ _ __ _ _ __ (_)
| _ \ | _| ' \/ _` | ' \| |
|___/_|\__|_|_|\__,_|_|_|_|_|
*** Welcome to the LAMP packaged by Bitnami 7.4.28-14 ***
*** Documentation: https://docs.bitnami.com/aws/infrastructure/lamp/ ***
*** https://docs.bitnami.com/aws/ ***
*** Bitnami Forums: https://community.bitnami.com/ ***
bitnami@ip-172-26-5-202:~$
インスタンス内での作業
ファイルの移動
まず、必要なファイルのダウンロードや移動を行います。
cd .
# omeka-sの公開パスの指定
# omeka_path=/home/bitnami/htdocs/omeka-s
omeka_path=/home/bitnami/htdocs
mkdir $omeka_path
# Omekaのダウンロード
wget https://github.com/omeka/omeka-s/releases/download/v3.2.3/omeka-s-3.2.3.zip
unzip omeka-s-3.2.3.zip
# ファイルの移動
mv omeka-s/* $omeka_path
# .htaccessの移動
mv omeka-s/.htaccess $omeka_path
# 元からあったindex.htmlを削除(もし存在すれば)
rm $omeka_path/index.html
データベースの作成
次にデータベースを作成します。
# パスワードの確認(パスワードが表示されます。)
cat /home/bitnami/bitnami_application_password
# 上記のパスワードを使ってmysqlに入る
mysql -u root -p
# データベースを作成する(omekasの部分は任意)
MariaDB [(none)]> create database omekas;
Query OK, 1 row affected (0.002 sec)
MariaDB [(none)]> quit;
Omeka Sの設定
次に、Omeka Sの設定ファイルを修正します。
vi $omeka_path/config/database.ini
以下のようにファイルの内容を修正する。
user = "root"
password = "(先ほど確認したパスワード)"
dbname = "omekas" # 先ほど作成したデータベース名
host = "localhost"
;port =
;unix_socket =
;log_path =
また、filesフォルダの所有者を変更します。
sudo chown -R daemon:daemon $omeka_path/files
さらに、サムネイル画像の生成等に必要な、imagemagickをインストールしておきます。
sudo apt install imagemagick -y
ブラウザでの設定
Amazon Lightsailのインスタンスの画面で、「Public IP」に表示されるIPアドレスにアクセスします。
以下のように、インストール画面が表示されます。
あとは、基本的なOmeka Sの操作方法と同じです。以下の記事などを参考に、Omeka Sをご活用ください。
独自ドメインの付与
ここからはオプショナルな作業について記述します。「独自ドメインの付与」「SSL化」「Basic認証」について扱います。
静的IPアドレスの付与
独自ドメインの付与については、まず静的なIPアドレスを付与します。「Networking」タブから「+ Create static IP」のリンクをクリックします。
以下の画面で「Create」ボタンを押します。
結果、静的なIPアドレスが付与されました。
Route 53
ここでは、Route 53を用いた独自ドメインの付与を行います。例えば、以下のように設定します。
しばらくすると、以下のようなアドレスでアクセスできるようになります。
SSL化
次に、SSL化を行います。再度インスタンスにsshでアクセスして、以下を実行します。
bitnami@ip-172-26-5-202:~$ sudo /opt/bitnami/bncert-tool
以下のように質問に回答します。(以下、一部分です。)
Domain list []: omeka.aws.ldas.jp
The following domains were not included: www.omeka.aws.ldas.jp. Do you want to add them? [Y/n]: n
Warning: No www domains (e.g. www.example.com) or non-www domains (e.g.
www.example.com) have been provided, so the following redirections will be
disabled: non-www to www, www to non-www.
Press [Enter] to continue: [Enter]
Do you agree to these changes? [Y/n]: Y
これにより、先のURLにアクセスすると、HTTPSにリダイレクトされます。
ここまでの作業により、独自ドメインとSSLを用いた最低限の公開環境が整います。
(参考)Basic認証
今回はBasic認証をかける必要があったため、その備忘録です。まず、ユーザを作成します。
sudo htpasswd -c /opt/bitnami/apache2/.htpasswd <username>
New password:
Re-type new password:
Adding password for user <username>
次に、.htaccessの先頭に認証情報を追記します。
vi /home/bitnami/htdocs/.htaccess
AuthType Basic
AuthName MyAuthName
AuthUserFile "/opt/bitnami/apache2/.htpasswd"
Require valid-user
この結果、以下のように、Basic認証が適用されました。
まとめ
以上、Amazon Lightsailを用いたOmeka Sの基本的なセットアップ方法と、Basic認証といったオプショナルな作業をまとめました。
Omeka Sを用いたデジタルアーカイブシステム構築時の参考になりましたら幸いです。
Discussion