ヤマムギ

growing hard days.

*

Pandocサーバーのコンテナイメージを作成する

   

マークダウンからEPUBへの変換をAWS Batchで行いたく、ECRにアップロードするためにまずコンテナイメージを作成しました。
普段コンテナ使ってないので苦戦しながらやりましたが、ちょっと仲良くなれた気はします。

Pandocのコンテナイメージをローカルにダウンロードする

環境はMacです。

まず、ベースになるDockerイメージをDocker Hubで探しました。

pandoc で検索してMost Popularなのが jagregory/pandocでしたので、それをpullしました。

とりあえず動かして確認してみました。

runしてすぐにExitedになりました。
コンテナイメージのドキュメントを見ると使い方が書いてあって、ディレクトリを/sourceディレクトリにして、変換前のファイルと変換後のファイル名とフォーマットを指定して実行するらしい。

自分が欲しかったのはPandocが実行されているサーバー環境だったのでこれではないらしい。
Amazon LinuxのコンテナイメージにPandocをインストールすることにしました。

Amazon Linux コンテナイメージにPandocをインストールする

入れた〜

EPEL リポジトリの有効化はこちらを見ました。

CentOS、RHEL、または Amazon Linux が実行されている Amazon EC2 インスタンスに対して EPEL リポジトリを有効にする方法を教えてください。

イメージのIDを確認してコンテナイメージを作成します。

テストするためにローカルディレクトリをマウントさせてコンテナを起動しました。

ローカルのディレクトリはフルパスで指定するんですね。
そしてそのパスは、Docker for Macの設定で設定されているディレクトリの配下である必要があるそうです。

何はともあれ、マウントできたので、変換テストをしてみます。

日本語でもテストをしてみました。

コンテナ上で作成したファイルが、マウント先のMacのディレクトリにもできてました。

Sample.mdの内容はこちらです。

Sample_ja.mdの内容はこちらです。

確認してみると、日本語もちゃんとEPUBになってました。

これでとりあえずイメージが出来たので先にすすめます。
今日はひとまずここまで。

あと、今回よく使ったコマンドで、Dockerコンテナの削除です。

試してダメならコンテナを削除してイメージからやり直せばいいので、すごく便利ですね。
コンテナが便利なことは頭ではわかっていたのですが、手を動かして実感すると違います。


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

【PR】 「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第2版」という本を書きました。

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

【PR】 「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

Amazon S3オブジェクトロック

S3のオブジェクトロックを確認しました。 オブジェクトロックの有効化 現在、既存 …

AWS Systems Manager Fleet Manager Windows RDP Connectを試してみました

AWS Systems Manager Fleet Manager Window …

AWS Savings Plansを検討しました

今、個人でAWSアカウントを7つ使っています。 Savings Plansが使え …

「AWSではじめるLinux入門ガイド 」を執筆しました

2020年4月30日に、「AWSではじめるLinux入門ガイド」という本を発行い …

kintone webhookからAWS API Gateway – Lambdaを実行しレコードの値を渡す

2017年2月のアップデートでkintoneにWebhook機能がリリースされま …

AWS Organizationsでタグポリシーを設定しようとしました

Organizationsで[タグポリシーを有効にする]ボタンを押下しました。 …

再会の日 ~re:Union 2018 Osaka by JAWS-UG~

8/5は大阪でre:Unionでした。 「再会」と名うったこのイベントは、6月に …

AWS AmplifyでTodoアプリを作るハンズオンをやってみました

【お手軽ハンズオンで AWS を学ぶ】AWS Amplify で Todo アプ …

Amazon Data Lifecycle Manager(DLM)が東京リージョンで使えるようになったのでLambdaでAMI自動取得から乗り換えた

EBSのスナップショットを自動で作成してくれるAmazon Data Lifec …

Lambda関数で自分自身の環境変数を更新する

Twitterでツイート検索するAPIを試してみるでツイートの取得を重複させない …