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
81
WordPress開発環境を Dockerで構築する
WordPressの開発環境をDockerで構築します
Chiku_chu
September 22, 2019
Tweet
Share
More Decks by Chiku_chu
See All by Chiku_chu
心理的安全性とリモートワーク
chikuchu
0
140
TokyoWordPressMeetup1019_まとめ
chikuchu
2
990
Docker Compose でWordPress環境構築してみる
chikuchu
0
590
WordPress ライセンスのお話
chikuchu
1
450
初心者でもできるWordPressのセキュリティ対策@WordBench羽田 11/4
chikuchu
2
660
mautic_meetup.pdf
chikuchu
0
21
Other Decks in Programming
See All in Programming
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
550
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
140
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
260
MCP with Cloudflare Workers
yusukebe
2
220
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
500
rails statsで大解剖 🔍 “B/43流” のRailsの育て方を歴史とともに振り返ります
shoheimitani
2
940
StarlingMonkeyを触ってみた話 - 2024冬
syumai
3
270
Webエンジニア主体のモバイルチームの 生産性を高く保つためにやったこと
igreenwood
0
340
Mermaid x AST x 生成AI = コードとドキュメントの完全同期への道
shibuyamizuho
0
160
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
1
150
たのしいparse.y
ydah
3
120
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
140
Featured
See All Featured
Fireside Chat
paigeccino
34
3.1k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Speed Design
sergeychernyshev
25
670
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
What's in a price? How to price your products and services
michaelherold
243
12k
A designer walks into a library…
pauljervisheath
204
24k
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!