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
Chiku_chu
September 22, 2019
Programming
1
83
WordPress開発環境を Dockerで構築する
WordPressの開発環境をDockerで構築します
Chiku_chu
September 22, 2019
Tweet
Share
More Decks by Chiku_chu
See All by Chiku_chu
心理的安全性とリモートワーク
chikuchu
0
150
TokyoWordPressMeetup1019_まとめ
chikuchu
2
1k
Docker Compose でWordPress環境構築してみる
chikuchu
0
600
WordPress ライセンスのお話
chikuchu
1
470
初心者でもできるWordPressのセキュリティ対策@WordBench羽田 11/4
chikuchu
2
680
mautic_meetup.pdf
chikuchu
0
22
Other Decks in Programming
See All in Programming
メモリウォールを超えて:キャッシュメモリ技術の進歩
kawayu
0
1.9k
リストビュー画面UX改善の振り返り
splcywolf
0
130
Compose Hot Reload is here, stop re-launching your apps! (Android Makers 2025)
zsmb
1
480
Memory API : Patterns, Performance et Cas d'Utilisation
josepaumard
0
110
AIコードエディタの基盤となるLLMのFlutter性能評価
alquist4121
0
200
生成AIを使ったQAアプリケーションの作成 - ハンズオン補足資料
oracle4engineer
PRO
3
200
Bedrock×MCPで社内ブログ執筆文化を育てたい!
har1101
6
900
S3静的ホスティング+Next.js静的エクスポート で格安webアプリ構築
iharuoru
0
220
Kamal 2 – Get Out of the Cloud
aleksandrov
1
180
Go1.24 go vetとtestsアナライザ
kuro_kurorrr
2
840
The Weight of Data: Rethinking Cloud-Native Systems for the Age of AI
hollycummins
0
270
いまさら聞けない生成AI入門: 「生成AIを高速キャッチアップ」
soh9834
15
4.5k
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
13
1.4k
How GitHub (no longer) Works
holman
314
140k
Practical Orchestrator
shlominoach
186
10k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
650
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
104
19k
Bash Introduction
62gerente
611
210k
Facilitating Awesome Meetings
lara
54
6.3k
A Modern Web Designer's Workflow
chriscoyier
693
190k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.5k
Done Done
chrislema
183
16k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.2k
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!