mdx.jpのオブジェクトストレージとCantaloupe Image Serverを使ってIIIF画像を配信する

概要 mdx.jpのオブジェクトストレージとIIIFイメージサーバの一つであるCantaloupe Image Serverを使ってIIIF画像を配信する方法に関する備忘録です。 背景 以下の記事で、mdx.jpのオブジェクトストレージを使った画像の配信方法について紹介しました。 また以下の記事で、Cantaloupe Image Serverで、Amazon S3に格納した画像を配信する方法について紹介しました。 これらを組み合わせることにより、デジタルアーカイブにおけるIIIF画像配信コストの課題の解決を目指します。 方法 以下の記事で紹介したDocker版Cantaloupeを使用します。 以下のリポジトリから、ソースコードをダウンロードいただけます。 https://github.com/nakamura196/docker_cantaloupe_s3 同梱されている.env.sampleを.envファイルにリネームし、設定を変更します。 # C # # C C C C A A A A A a N m C N N N N w T d A T T T T s A x N A A A A L . T L L L L s O j A O O O O 3 U p L U U U U P O P P P P E U E E E E _ P _ _ _ _ S E S S S S 3 _ 3 3 3 3 S S S S S S O 3 O O O O U S U U U U R O R R R R C U C C C C E R E E E E _ C _ _ _ _ E E A S R B N _ C E E A D E C C G S P N E R I I O D S E O C I P S T N L N O _ _ = O T I K K O = N E E K T Y Y U = _ = P h I S t D T t = R p A s T : E / G / Y s _ 3 B d U s C . K m E d T x _ . N j A p M E = ポイントはCANTALOUPE_S3SOURCE_ENDPOINTです。ここに、https://s3ds.mdx.jpを与えて、取得したACCESS_KEY_IDやSECRET_KEY、作成したBUCKET_NAMEやREGIONを設定します。 ...

2024年7月7日 · 2 分 · Nakamura

mdxのオブジェクトストレージを使用する(Cyberduckの利用)

概要 mdxのオブジェクトストレージを使用する機会がありましたので、備忘録です。 https://mdx.jp/ 料金 2024年度の料金は以下のようになっています。 https://mdx.jp/guide/charge 1GBあたり、0.01ポイント(円)/日となっており、おおよそ1GBあたり、0.3円/月となっています。 申請方法 & s3cmdを用いた使い方 以下の公式チュートリアル動画が参考になりました。 https://www.youtube.com/watch?v=IN_4NS9hO2Y Cyberduckを使う 上記の動画ではコマンドラインツールによるファイル操作方法が紹介されています。 ここでは、Cyberduckを使用して、GUIを使ってファイル操作を行います。 AWS S3に対するCyberduckの操作方法を以下の記事で紹介しています。以下の方法を参考に、mdxのオブジェクトストレージに接続してみます。 接続設定 「新規接続」から接続設定を行います。 「Amazon S3」を選択して、サーバに「s3ds.mdx.jp」を入力します。 そして、発行された「アクセスキーID」および「シークレットアクセスキー」を入力します。 バケットの作成 右クリック > 「新規フォルダ」でバケットを作成できます。 ファイルのアップロード 以下のいらすとやさんの画像を使用します。 https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNuMuIaXnIW5QJXkLiV1ojUeUiIwNQF1O0lp2LgG2LGJUbIU8j4bFAyLyKq3BiYp53p0Yc8AtMsEykJAQgEx4SJyFvKY4OyNeDBFopPb4lnV7_wtZNkr91qwj6-m-8s-sl1aadYMhrpuoI/s800/baby_asia_boy.png 「satoru196」フォルダにドラッグ&ドロップでアップロードすることができます。 上述した公式チュートリアルでも言及されていますが、このままでは以下のURLにアクセスしても、表示ができません。 https://s3ds.mdx.jp/satoru196/baby_asia_boy.png 以下のようなエラーコードが表示されます。 < < < < < < E s C M R H r c o e e E r r d s q s r o i e s u t r r p > a e I o > t A g s d r / c e t > > > c > I 0 e A d 0 s c > 0 s c . 0 D e . 0 e s . 0 n s < 0 i / 0 e D R 0 d e e 0 < n q 0 / i u 0 C e e 0 o d s 0 d < t 0 e / I 0 > M d 0 e > < s / s H a o g s e t > I d > ACLの変更 ファイルを右クリックして、「情報」をクリックします。 ...

2024年7月6日 · 1 分 · Nakamura

Omeka ClassicとOmeka S: 機能と違いの比較(GPT-4による解説)

Omeka ClassicとOmeka S: 機能と違いの比較(GPT-4による解説) 対象ユーザー: Omeka Classic: 主に個人や小規模な組織がデジタルコレクションを公開する目的。 Omeka S: 中から大規模な組織や複数のプロジェクトを同時に扱うことができるように設計。 サイト管理: Omeka Classic: 1つのインスタンスで1つのウェブサイトを作成。 Omeka S: 1つのインスタンスで複数のウェブサイトを作成・管理。 データ共有: Omeka Classic: 基本的には独立したサイトを作成。 Omeka S: データの再利用や共有を容易にするため、リンクトデータとセマンティックウェブ技術に対応。 拡張機能: Omeka Classic: プラグインをサポート。 Omeka S: モジュールをサポート。※Omeka ClassicのプラグインはOmeka Sのモジュールと互換性がない。 コミュニティサポート: Omeka Classic: 豊富なサポート資料やオンラインコミュニティが存在。 Omeka S: 比較的新しいプラットフォームで、まだそれほど多くの資料やサポートがないが、急速に成長中。 選択をする際には、プロジェクトの規模やニーズ、技術的なスキル、利用可能なリソースなどを考慮して、どちらのプラットフォームが適切かを判断することが重要です。この解説はGPT-4によって作成されました。 質問一覧 Omeka ClassicとOmeka Sの違いを教えてください。 上記の説明をマークダウン形式に変換してください。 上記の記事にタイトルをつけてください。 GPT-4を用いたことを追加してください。 私が行った質問の一覧をマークダウンで作成してください。 続き zenn.devに投稿するにあたり、複数のトピックを提案してください。 zenn.devへの投稿にあたり、以下のようなトピックを提案します。 Omekaプラットフォーム入門: Omeka ClassicとOmeka Sの基本概念やインストール方法を紹介。 Omeka ClassicとOmeka Sの拡張機能比較: 両プラットフォームで利用できるプラグインとモジュールの比較と使い方。 Omekaを利用したデジタルアーカイブ構築: Omeka ClassicまたはOmeka Sを用いてデジタルアーカイブを作成する方法。 Omeka ClassicからOmeka Sへの移行ガイド: データの移行や再設定が必要な部分について説明。 リンクトデータとセマンティックウェブの活用: Omeka Sでリンクトデータやセマンティックウェブ技術を活用する方法とメリット。 デジタルヒューマニティーズとOmeka: デジタルヒューマニティーズ分野でのOmekaの活用事例や可能性について説明。 Omekaプロジェクトのベストプラクティス: 成功したOmekaプロジェクトの共通点やベストプラクティスについて解説。 オープンソース文化遺産管理ソフトウェアの比較: Omeka以外のオープンソース文化遺産管理ソフトウェア(例: CollectiveAccess, DSpace)との比較。 より技術ブログに適した端的なキーワードを最大5つ教えてください。 技術ブログに適した端的なキーワードは以下の通りです。 ...

2023年3月17日 · 1 分 · Nakamura

Amazon Lightsailを用いたOmeka Sサイトの構築(独自ドメイン+SSL化を含む)

更新履歴 2022/09/08 スクリプトの記述を最新化しました。 概要 Amazon Lightsailは以下のような説明がなされています。 Amazon Lightsail は、コンテナなどのクラウドリソースを予測可能な低価格で簡単に管理できる、使いやすい仮想プライベートサーバー (VPS) です。 今回は、このAmazon Lightsailを用いたOmeka Sの構築方法を紹介します。合わせて、データベースの公開にあたり一般的に求められる「独自ドメイン」「SSL」設定についても扱います。 Amazon Lightsail インスタンスの作成 以下のページにアクセスします。 https://lightsail.aws.amazon.com/ls/webapp/home/instances そして、以下の「Create Instance」ボタンをクリックします。 「Select a blueprint」において、「LAMP (PHP 7)」を選択します。 「Choose your instance plan」において、インスタンスプランを選択します。今回は最も低価格のプランを選びました。 起動したら、以下のインスタンスのページにアクセスして、「Connect using SSH」ボタンを押します。 以下の画面が表示されます。 L T t i D p b i h h n e e i n e e d b r t u i i m n x p e v a i a r x i n t m i o a d t W D B i p g c u G e e o i @ - r t a N d l c t i 1 a l U c u n p 7 m d / b o m a - 2 s i f L y m e m 1 - s i i e n i 7 2 i t l n a t 2 6 n r e u p t a F - - c i s x p o t o 2 5 l b l i r 6 - u u i c i t o u - 2 d t n o c h n m 5 0 e i m a e : s - 2 d o / e b : 2 n u s l L 0 4 w s e A h h h 2 . i t r w _ _ M t t t : 1 t e / i l ` , P t t t ~ 9 h r s t a _ p p p $ . m h h w p s s s 0 t s a . a : : : - h r A c / 1 e f e B k / 9 o / S a d d c - D r d O g o o o c e o L e c c m l b e c U d s s m o i a / T . . u u a c * E b b b n d n h / L y i i i - c Y t t t a G p o B n n y m N r p N i a a . d U y O t m m b 6 g r n i i i 4 L r i W a . . t i a g A m c c n # n m h R i o o a 1 u t R m m m x a . A 7 / i S r N . a a . M s e T 4 w w c P y Y . s s s d , 2 / m D t e 8 i / e e s t - n b m c o 1 f i r 4 r a a i t a n r b h s e e e t 4 d r . f e u 1 r i x c 9 e n t t . e e u 2 t n r 3 s h t e 2 o e / - f l 1 t a w m ( a p 2 r / 0 e 2 ; 2 - 0 3 - 0 7 ) x 8 6 _ 6 4 インスタンス内での作業 ファイルの移動 まず、必要なファイルのダウンロードや移動を行います。 ...

2022年4月26日 · 13 分 · Nakamura

【FOSSメモ】CollectiveAccess

以下、GitHubのREADME.mdの一部和訳です。 github.com CollectiveAccessについて CollectiveAccessは、博物館、アーカイブ、および研究のコンテキストで複雑なデジタルおよび物理コレクションを管理、説明、および発見するためのフレームワークを提供するWebベースのアプリケーションスイートです。これは2つのアプリケーションで構成されています。Providenceは、CollectiveAccessの「バックエンド」カタログコンポーネントです。高度に構成可能であり、さまざまなメタデータ標準、データ型、およびメディア形式をサポートします。Pawtucket2は、CollectiveAccessの汎用パブリックアクセス公開ツールです。プロビデンスで管理されているデータを中心にWebサイトを作成する簡単な方法を提供します。(Pawtucket2の詳細については、https://github.com/collectiveaccess/pawtucket2をご覧ください) CollectiveAccessは、オープンソースのGNU PublicLicenseバージョン3で無料で入手できます。

2021年7月25日 · 1 分 · Nakamura

【Omeka S モジュール紹介】Item Sets Tree

概要 Item Sets Treeはアイテムセットの階層構造を設定できるモジュールです。 本モジュールの使い方についてご紹介します。 omeka.org 概要 インストール データ 機能紹介 親アイテムセットの設定 階層構造の確認 各アイテムセットのアイテム一覧画面における子孫のアイテムの表示 サイトでの表示 まとめ インストール モジュールのインストール後、以下の設定画面が表示されます。こちらはあるアイテムセットのアイテムを表示した際、その子孫のアイテムセットのアイテムも表示するかを指定するオプションです。後ほど違いを確認します。 データ 今回は「いらすとや」で公開されている画像を使用します。 www.irasutoya.com 「いらすとや」では「人物」>「赤ちゃん」>「子守唄のイラスト」といった形で階層構造を持っています。そこで、「人物」と「赤ちゃん」をアイテムセットとして、「子守唄のイラスト」や「タオルを使ってうつ伏せになる赤ちゃんのイラスト」などをアイテムとして扱います。 Omeka Sの画面では以下の通りです。 アイテムセットの一覧画面 アイテムセット「赤ちゃん」のアイテム一覧画面 アイテムセットとして「人物」「赤ちゃん」があり、アイテムセット「赤ちゃん」の中に、2つのイラストが格納されています。 機能紹介 親アイテムセットの設定 本モジュールをインストールすることにより、各アイテムセットの編集画面に「Item Sets Tree」というタブが表示されます。こちらで、親とするアイテムセットを指定することができます。 階層構造の確認 画面サブのメニューの「モジュール」 > 「Item Sets Tree」から、設定したアイテムセットの階層構造を確認できます。違いをわかりやすくするために、アイテムセット「人物」に加えて、「イベント」「祝日・行事」も追加しています。 各アイテムセットのアイテム一覧画面における子孫のアイテムの表示 上のインストールのところで述べた「Item sets include descendants」を有効化すると、各アイテムセットのアイテム一覧画面において、子孫のアイテムを表示することができます。 以下の例で示されたアイテムは、アイテムセット「人物」に含まれていませんが、「人物」の子アイテムセット「赤ちゃん」を介して表示されています。 サイトでの表示 アイテムセットの階層構造をサイトで表示する方法として、カスタムリンクを追加する方法と、サイトページにItem Sets Treeのブロックを埋め込む方法の2種類があります。 前者は、以下のナビゲーションメニューから追加できます。特にカスタマイズ等を行わない場合には、この方法が簡単です。 後者の場合は、サイトページの編集画面において、画面右部の「新規ブロックを追加」パネルから、Item Sets Treeを追加します。この方法の場合、ページのタイトル変更や、各アイテムセットの説明、そのアイテムセットに含まれるアイテム数を表示するかなどを設定できます。 後者の方法で作成したサイトページの例は以下です。 https://diyhistory.org/nakamura196/s/main/page/item-sets-tree まとめ 以上、アイテムセットの階層構造を設定できるItem Sets Treeモジュールについて説明しました。階層構造を持ったコレクションの管理などにおいて、参考になりましたら幸いです。

2021年7月23日 · 1 分 · Nakamura

【機能開発】Omeka SのIIIF ServerモジュールにおけるImage APIを使用しない設定の追加

概要 Omeka SのIIIF Serverモジュールについて、Image APIを使用しない設定を追加する機能開発を行いました。これにより、レンタルサーバなどのリソースが限られた環境において、IIIFマニフェストなどの配信が容易となります。デジタルアーカイブシステムの持続性と利活用性の向上にむけて、本機能がお役にたてば幸いです。 背景 Omeka SのIIIF Serverモジュールは、Omeka Sに登録されたメタデータから、IIIFマニフェストファイルなどを生成するモジュールです。Omekaの様々なモジュールを開発されているDaniel-KM氏が主に開発されています。 github.com 画像については、Image Serverが必要となります。Awesome IIIFに挙げられているようなIIIF ServerをOmeka Sとは別に導入するか、Omeka SのImage Serverモジュールを使用することができます。後者については、Omeka Sのみで実現することができるため、LAMP環境が構築されたレンタルサーバを利用して、IIIF準拠の画像やマニフェストファイルなどの配信が可能となります。レンタルサーバはCPUやメモリといったリソースが限定されますが、メンテナンスコストが低い点が利点として挙げられます。 一方、レンタルサーバなどのリソースが限られた環境に、上述のOmeka SのImage Serverモジュールを導入するには課題があります。Image Serverモジュールが動的にタイル画像を配信する際、この処理に時間がかかり、タイル画像の表示が遅れる事象が確認されました。((なお、事前にタイル画像を生成するオプションも提供されています。これにより、リクエストがある度にタイル画像を生成する処理は不要となりますが、ディスク使用量の増加といったデメリットもあります。)) 解決策 IIIFマニフェストにおいて、必ずしもIIIF Image APIに準拠する必要はなく、単純にJPEG画像等を参照することもできます。((なお、これにより画像の動的なリサイズや回転、切り出し等ができなくなるため、機能が限定されるデメリットもあります。)) www.kanzaki.com そこで、レンタルサーバなどのリソースが限られた環境において、Omeka Sを用いたIIIFマニフェストの配信を行うための新たなオプションとして、このImage APIを使用せずに、Omeka Sに登録されたJPEG画像等をそのまま使用する設定をIIIF Serverモジュールに追加しました。以下のversion 3.6.4.3から本機能が利用できます。 github.com 具体的には、IIIF Serverモジュールの以下の設定画面で有効化できます。 本モジュールは、東京大学工学・情報理工学図書館の工学史料キュレーションデータベースで使用されています。 curation.library.t.u-tokyo.ac.jp 先述した通り、本設定の有効化により、IIIFで利用できる機能が一部制限されるため、最善の手段ということではありませんが、リソースが限られたサーバ上でのIIIFマニフェストの配信手段のオプションとして、本機能がお役にたてば幸いです。

2021年7月22日 · 1 分 · Nakamura