Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Pelican の紹介 / World Plone Day 2017 Tokyo

853 views

Published on

https://plonejp.connpass.com/event/51340/ の LT資料です

Published in: Technology
  • Be the first to comment

Pelican の紹介 / World Plone Day 2017 Tokyo

  1. 1. Pelican の紹介 @laugh_k Pelican の紹介 / World Plone Day 2017 Tokyo / 2017-04-26 Wed
  2. 2. お前誰よ Kei IWASKAI Twitter @laugh_k Github @laughk PAY.JP の中の人 Python mini hack-a-thon に度々出没 個人のブログでPelicanを使ってる Pelican の紹介 / World Plone Day 2017 Tokyo / 2017-04-26 Wed
  3. 3. Pelican
  4. 4. Pelican https://blog.getpelican.com/ Python 製の Static Site Generator 静的コンテンツの生成だけ ブログに特化 docutils/jinja2 が使われている ReST, Markdown, AsciiDoc でブログが書ける
  5. 5. Pelican 発表時点でのバージョンは 3.7.1 Github Organization があり 開発はチームで行われている ようです https://github.com/getpelican
  6. 6. Pelican の特徴
  7. 7. Pelican の特徴 Pelican 自体はサイト全体の HTML を生成するだけ 生成方法の設定を Python で記述する Syntax highlight, DISCUS, Google Analytics, ソーシャルボタン あたりはプラグインで対応可 公式にテンプレート、プラグインを集約しているリポジトリがある
  8. 8. Pelican を利用する際のイメージ
  9. 9. Pelican を利用する際のイメージ インストール $ pip install pelican $ pip install markdown # markdown でブログ書きたい人用 ブログを作り始める $ pelican-quickstart
  10. 10. Pelican を利用する際のイメージ なんかいろいろ聞かれます
  11. 11. Pelican を利用する際のイメージ こんな感じにファイルができる pelican-sample/ ├── content/ # ... ReST, Markdown, AsciiDoc はここにおいてく ├── develop_server.sh ├── fabfile.py ├── Makefile ├── output/ ├── pelicanconf.py └── publishconf.py
  12. 12. Pelican を利用する際のイメージ 好きな形式でブログを書く ex. content/world-plone-day2017-tokyo.rst :Title: World Plone Day 2017 Tokyo :Date: 2017-04-26 19:00 :Category: Sample World Plone Day の LT だよ!!!1
  13. 13. Pelican を利用する際のイメージ 書いたらビルド $ make html # Makefile がデフォルトで生成されている or $ pelican content -o output -s pelicanconf.py
  14. 14. Pelican を利用する際のイメージ こんな感じでできる pelican-sample/ ├── content/ ├── develop_server.sh ├── fabfile.py ├── Makefile ├── output/ # ------------------------------> ├── pelicanconf.py └── publishconf.py
  15. 15. Pelican を利用する際のイメージ こんな感じでできる pelican-sample/ ├── content/ ├── develop_server.sh ├── fabfile.py ├── Makefile ├── output/ # <-- ここを適当な Webサーバへ持っていく ├── pelicanconf.py └── publishconf.py
  16. 16. Pelican を利用する際のイメージ output 配下をホスティング
  17. 17. 詳しくは公式ドキュメントで http://docs.getpelican.com/
  18. 18. 気に入ってるところ
  19. 19. Pelican の気に入ってるところ ホスティング方法の選択肢が多い 対応しているマークアップが豊富 テーマが豊富
  20. 20. ホスティング方法の選択肢が多い Pelican そのものをサーバにインストールする必要がない Webアプリではないのでセキュリティ的に気にするとことは少なめ HTTP で配信さえできれば使えるので色々選べる Github pages S3 + Cloudfront VPS で Apache httpd / Nginx / H2O などと組み合わせ レンタルサーバ
  21. 21. 対応しているマークアップが豊富 ReST, Markdown, AsciiDoc の3種類に対応しているのは珍しい (と思う) 複数形式が混ざっていても使える
  22. 22. テーマが豊富 Pelican themes http://www.pelicanthemes.com 公式が管理しているリポジトリに 集まったテーマのデモが見れる 2017-04-25 時点で 120 種類
  23. 23. ちなみに
  24. 24. HSS github.com/laughk/pelican-hss @laugh_k 作のテーマ 基本は自分で使うためのもの シングルレイアウト レスポンシブ はてぶボタンや Google Adsense 機能あり
  25. 25. 公式のテーマ集にもマージされてますὢ
  26. 26. イマイチだなと感じること
  27. 27. Pelican イマイチだなと感じること 記事の編集、投稿に制約がある 下書きの管理が微妙 スマフォで編集はあきらめよう 仕組み化しなければ手動デプロイしないと更新できない プラグインの指定がややめんどう テーマごとに設定ファイルの書き方が違うことがある ※ あくまで @laugh_k が個人的に感じることです
  28. 28. 改めて Pelican を使っている理由
  29. 29. Pelican を使っている理由 Vim, VS Code で書いてそのまま公開したい 記事を ReST, Markdown でバージョン管理しておきたい 人と同じ環境でブログやるのが面白くない Python 製のツールでやりたい セキュリティまわりでヒーヒーしたくない 自分でインフラ環境をガチャガチャいじれるプロダクトは持ってお きたい
  30. 30. おまけ
  31. 31. @laugh_k のブログのデプロイフロー 発表時での http://memo.laughk.org の状況

×