Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
WordPress開発環境をDockerで構築する
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Chiku_chu
September 22, 2019
Programming
98
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WordPress開発環境を Dockerで構築する
WordPressの開発環境をDockerで構築します
Chiku_chu
September 22, 2019
More Decks by Chiku_chu
See All by Chiku_chu
心理的安全性とリモートワーク
chikuchu
1
160
TokyoWordPressMeetup1019_まとめ
chikuchu
2
1.1k
Docker Compose でWordPress環境構築してみる
chikuchu
0
650
WordPress ライセンスのお話
chikuchu
1
510
初心者でもできるWordPressのセキュリティ対策@WordBench羽田 11/4
chikuchu
2
710
mautic_meetup.pdf
chikuchu
0
44
Other Decks in Programming
See All in Programming
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
360
AI時代のUIはどこへ行く?その2!
yusukebe
22
7.4k
New "Type" system on PicoRuby
pocke
1
970
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
270
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
14
5.6k
AIだと陥りがちなJakarta EE最新技術への移行時の落とし穴と解決策
tnagao7
0
110
Creating Composable Callables in Contemporary C++
rollbear
0
150
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.4k
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
130
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
840
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
350
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
120
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
240
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
200
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
300
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Into the Great Unknown - MozCon
thekraken
41
2.6k
Transcript
WordPress開発環境を Dockerで構築する WordPress Meetup Haneda 2019/09/22 by ちくちゅう
1. ⾃⼰紹介 2 • 名前 ︓ちくちゅう(⽵=ちく 中=ちゅう) • TW ︓@chiku_chu
• 本業 ︓フリーランス 認定スクラムマスター ITコンサル(PM、IT企画、インフラ、セキュリティ) サーバーサイド(PHP、Python、AWS) フロントエンドちょっと • 趣味 ︓運動、料理、登⼭ • WordPress ︓2012年頃から受託開発 との出会い 2013年 WordCampTokyo初参加 2014年 WordCampTokyo運営委員 2019年 WordCampHaneda運営委員 他、WordPressMeetupのモデレータなど
2. 今⽇の発表 l 概要 WordPressの開発環境をDockerで構築する⼿順を お話しします l どんな⼈向けのお話か ・WordPressの開発やカスタマイズをする環境を 作りたい⼈
・現在Xampp/Mamp、Vagrantを使っている開発者 3
3. WordPressの開発の流れ 4 1. ローカル環境で コーディング、 テスト 2. Gitへコミット 3.
本番環境へ リリース ここの話 l ⼀般論
4. 開発環境の選択肢 5 1. Xampp/mamp ローカル環境にサーバー構築 2. Vagrant 仮想環境︓ホスト型 3.
Docker 仮想環境︓コンテナ型 _⼈⼈⼈⼈⼈⼈⼈⼈_ > 本番直接編集 <  ̄Y^Y^Y^Y^Y^Y^ ̄ 4 l だいたいこの3つ︖
5. VagrantとDockerの⽐較 6 Docker Vagrant ホストOS コンテナエンジン (Docker) コンテナ コンテナ
アプリ アプリ アプリ ホストOS 仮想化ソフトウェア ゲストOS ゲストOS アプリ アプリ アプリ Ø ゲストごとにCPU/メモリ/ ストレージを割り当て Ø ゲストOSの容量が⼤きい (数 GB〜) Ø 別環境で動作させるために ネットワーク設定等が改めて 必要 Ø コンテナ全体でCPU/メモリを 共有 コンテナのサイズは仮想化に ⽐べて⼩さい Ø 可搬性が⾼い Ø ホストOSと異なるカーネル⽤ イメージは使えない
5. VagrantとDockerの⽐較 7 . VagrantDocker 7 . VagrantDocker 7
6. コンテナエンジンをインストール 8 Docker for Mac https://docs.docker.com/docker-for-mac/install/ Docker for Windows
https://docs.docker.com/docker-for-windows/install/ l インストール
7. コンテナイメージを取得Docker Hub 9 l Docker Hub コンテナイメージのリポジトリ https://hub.docker.com/ www.docker.comでIDを作成
ここに⼊れる Ø WordPress https://hub.docker.com/_/wordpress Ø MySQL https://hub.docker.com/_/mysql
8. フォルダ構造と設定ファイル 10 github.com/chikuchu/docker-wordpress から docker-compose.yml をダウンロードして任意のフォルダに配置 l docker-compose.yml (Mac⽤)
Users/ (Your Account) / Docker/ Wordpress/ app/ このへんの フォルダ名 は任意 db/ docer-compose.yml
8. フォルダ構造と設定ファイル 11 l 詳しくはリファレンス参照 http://docs.docker.jp/compose/compose-file.html Ø Service コンテナで動かすアプリケーションの種類と設定 Ø
Network(割愛) コンテナ環境のネットワーク設定 Ø Volumes コンテナが利⽤するストレージの設定
8. フォルダ構造と設定ファイル 12 db: image: mysql:5.7 container_name: wpdev_mysql volumes: -
database:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: wordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress l Service︓DB ・Docker Hubのイメージ名 ・コンテナ名(任意) ・サービス名(任意) ・利⽤するボリューム Volume名︓コンテナ内内のパス ・設定 rootパスワード データベース名 接続⽤ユーザー名 接続⽤ユーザーのパスワード
8. フォルダ構造と設定ファイル 13 wordpress: image: wordpress:latest container_name: wpdev_app volumes: -
wordpress:/var/www/html depends_on: - db ports: - "8001:80" restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_PASSWORD: wordpress l Service︓WordPress ・Docker Hubのイメージ名 ・コンテナ名(任意) ・サービス名(任意) ・利⽤するボリューム Volume名︓コンテナ内内のパス ・設定 DBホスト名︓ポート DB接続パスワード ・セットで利⽤する別コンテナ のサービス名 ・ポートフォワーディング設定 外向けのポート︓コンテナ内のポート
8. フォルダ構造と設定ファイル 14 wordpress: driver_opts: type: none device: /Users/chikuchu/docker/wordpress/app/ o:
bind database: driver_opts: type: none device: /Users/chikuchu/docker/wordpress/db/ o: bind l Volumes ・ボリューム名(任意) Service側で指定した名前と⼀致する必要あり ・ローカルフォルダのパス ※type、o:bindはボリュームの永続化
10. 起動︕ 15 l 起動コマンド docker-compose.ymlを置いたディレクトリで 以下のコマンドを実⾏ docker-compose up –d
10. 操作コマンド 16 l その他のコマンド Ø 停⽌ docker-compose down Ø
再起動 docker-compose restart Ø コンテナ内でコマンド実⾏ docker-compose run コンテナ名 コマンド
12. 次のステップ 17 l 次回 どちらかの話をします ØAmazon ECS で本番環境でDocker運⽤ ØKubernetesでオーケストリんぐ
おしまい 18 Thank you!