Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
WordPress を Trellis で管理した話
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Yusuke Matsuura
December 16, 2017
Technology
950
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WordPress を Trellis で管理した話
九州インフラ交流勉強会(Kixs) Vol.006
Yusuke Matsuura
December 16, 2017
More Decks by Yusuke Matsuura
See All by Yusuke Matsuura
SRE Activities at Nulab
matsuzj
0
210
SRE 本 輪読会 #1
matsuzj
0
1k
サーバ構成管理について
matsuzj
0
180
MySQL 5.1 から Aurora への移行
matsuzj
0
160
Other Decks in Technology
See All in Technology
Local CI × GitHub Actions
gogutan
2
220
PHPカンファレンス関西の招待状 / Invitation to PHP Conference Kansai
ykanoh
0
180
専門領域のAIをどう評価するか
bengo4com
2
270
フロントエンドカンファレンス関西2026 - 速すぎるUIに、待ち時間を
teamlab
PRO
0
180
hackers_champloo_2026_tidb
makocchi
0
170
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
170
AI × アーキテクト 第1・2章|生成AIの課題とアーキテクトの素養
daidaidai
0
170
Refining Active Record
shugo
0
160
オントロジーって 結局なにもの? AI エージェントに「意味」を渡す知識設計の話
greenmidori
0
230
FinOps Agentが生んだ技術負債:コスト自動調査の落とし穴と解消までの道のり
oasis1994liveforever
1
110
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
190
Classmethod Company Deck
satoshi7
1
720
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
The Curious Case for Waylosing
cassininazir
1
570
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
330
Evolving SEO for Evolving Search Engines
ryanjones
0
330
Automating Front-end Workflow
addyosmani
1369
210k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Accessibility Awareness
sabderemane
1
250
How to make the Groovebox
asonas
2
2.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
Transcript
WordPress を Trellis で管理した話 Yusuke Matsuura ‒ Nulab Inc. Dec
16, 2017 14:00 ∼ 17:30 九州インフラ交流勉強会(Kixs) Vol.006
自己紹介 ‒ Yusuke Matsuura @matsuzj ‒ Nulab Inc. ‒ Site
Reliability Engineer @Backlog ‒ 趣味は登山・キャンプ ‒ Job ‒ Web サービスの開発/運用を始めて11年ぐらい経ちます ‒ アプリケーションエンジニアからインフラ方面へ ‒ 現在は運用・改善・トラブルシュート等 ‒ Team ‒ 2015年7月から Nulab のインフラ担当としてジョイン ‒ 2016年9月から SRE チームを2名になる ‒ 2017年8月から SREメンバーが追加されて3名体制へ
話すること ‒ Trellis 導入の経緯 ‒ Trellis ついて ‒ Web サイトのインフラ構成など
Trellis 導入の経緯 日本向けのドメイン backlog.jp と 海外向けの backlogtool.com を backlog.com へ統合するプロジェクトが動いています。
Webサイトも backlog.com へ統合することになったの で、コンテンツ管理、インフラ管理を楽になるよう検討 することになりました
None
None
Trellisって何? WordPress をよしなに構成管理してくれるツール Modern LEMP stack ‒ Linux ( Ubuntu
) ‒ Nginx ‒ MySQL ( MariaDB ) ‒ PHP
具体的には何を使っているか ‒ Nginx ‒ MariaDB (MySQL drop‒in replacement) ‒ PHP
7.1 (+ extensions) ‒ Composer ‒ WP‒CLI ‒ sSMTP ‒ Memcached ‒ Fail2ban ‒ ferm (firewall) ‒ Mailhog
ディレクトリ構成は? ̀̀̀shell current/ # Root directory (You can change this
directory name) ├── trellis/ # For Ansible │ ├── nginx‒includes # Include nginx conf https://roots.io/trellis/docs/nginx‒includes/ │ └── templates # Define User template, Require trellis/group̲vars/all/main.yml └── site/ # Directory for website (Bedrock‒based) └── web/ ├── app/ # WordPress content directory (themes, plugins, etc.) └── wp/ # WordPress core (don't touch!) ̀̀̀
開発 ‒ 開発は vagrant up を実行してローカルで動作確認で きます ‒ Ansible の
group̲vars には development, staging, production が定義されている ansible‒playbook server.yml ‒e env=staging ‒u ubuntu ‒ デプロイも簡単です ./bin/deploy.sh staging backlog.com
PHP の extensions 拡張したいんだけど? できます! trellis/group̲vars/all/main.yml に以下を追加するだけ php̲extensions̲custom: php7.1‒yaml: "{{
apt̲package̲state }}"
Nginxで他のサーバにプロキシしたいんだけど? できます! 以下に配置するだけで location の追加ができる trellis/nginx‒includes/domain/*.conf.j2
RDS 使いたいんだけど? できます! trellis/group̲vars/production/wordpress̲sites.yml wordpress̲sites: backlog.com: env: db̲host: rds.us‒east‒1.rds.amazonaws.com
SES 使いたいんだけど? できます! trellis/group̲vars/all/mail.yml # Documentation: https://roots.io/trellis/docs/mail/ mail̲smtp̲server: email‒smtp.us‒east‒1.amazonaws.com:465 mail̲admin:
[email protected]
mail̲hostname: localhost mail̲user: mail̲user mail̲password: "{{ vault̲mail̲password }}" # Disable STARTSSL for Amazon SES ssmtp̲start̲tls: 'No'
ALB 使いたいんだけどヘルスチェックどうすんの? できます! trellis/group̲vars/all/main.yml に以下を追加する https://github.com/roots/trellis/issues/786 nginx̲sites̲confs: ‒ src: no‒default.conf.j2
enabled: false ‒ src: "{{ playbook̲dir }}/templates/default‒elb‒health‒check.conf.site.j2"
所感 ‒ サーバ管理が Ansible なのはいい ‒ 細かい設定・拡張もできる ‒ デプロイもすごく楽
Backlog 歴史的経緯 ‒ 10年の歴史で作られたコンテンツがいっぱいある ‒ すべてWordPress で管理されているわけでなくStatic なファイルがある
Backlog のコンテンツは?
インフラ構成 useast1 public private Target Group backlogcomwebsite Target Group backlogcomwebsitestaging
https://backlog.com/ backlogwebsiteblog backlogwebsite Target Group backlogcomwebsiteworld Target Group backlogcomwebsitedl backlogwebsiteworld