Skip to content

Commit

Permalink
Merge pull request #191 from mziyut/blogsync-pull
Browse files Browse the repository at this point in the history
blogsync pull
  • Loading branch information
mziyut authored Feb 6, 2024
2 parents 8eede4b + 708962e commit f51bc19
Show file tree
Hide file tree
Showing 20 changed files with 913 additions and 0 deletions.
10 changes: 10 additions & 0 deletions blog/entry/mziyut.hatenadiary.com/entry/2015/05/01/hello-world/.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
Title: Hello World
Category:
- WordPress
Date: 2015-05-01T00:00:43+09:00
URL: https://mziyut.hatenadiary.com/entry/2015/05/01/hello-world/
EditURL: https://blog.hatena.ne.jp/mziyut112/mziyut.hatenadiary.com/atom/entry/6801883189080502250
---

Hello World.
Original file line number Diff line number Diff line change
@@ -0,0 +1,178 @@
---
Title: Wordpress を Docker で動かすためにやったこと
Category:
- Docker
- MySQL
- Nginx
- WordPress
Date: 2017-12-15T22:00:17+09:00
URL: https://mziyut.hatenadiary.com/entry/2017/12/15/running-wordpress-on-docker/
EditURL: https://blog.hatena.ne.jp/mziyut112/mziyut.hatenadiary.com/atom/entry/6801883189080502197
---

### はじめに

最近使うことが当たり前になってきている docker ですが、仕事上使うことがあっても個人ではなかなか使う機会がありませんでした。
個人で契約しているサーバーの整理すると同時に、Docker 化出来るものは全て Docker 化することにしました。

今回は Wordpress で動かしているこの blog を Docker 化する際に行ったことをまとめます。

少し構成としてややこしい部分もあるので、全体構成についてはまた別途書きます。

### 準備

まず、Docker を動かせる環境を用意しましょう。

私は Mac を使っていますので、Docker for Mac のインストールと、Docker 公式ページを参照に、docker-compose を導入しました。

手順については、他のところで記述があるので今回は割愛します。リンクを貼っておくのでそちら確認してみてください。

[https://hub.docker.com/editions/community/docker-ce-desktop-mac:embed:cite]

[https://docs.docker.com/compose/install/:embed:cite]


### 今回の構成

今回構成として以下のようにしました。

- nginx
- MySQL
- Wordpress

シンプルに Wordpress を動作させるコンテナおよび、MySQL を動作させるコンテナのみとなります。

nginx をホスト OS に置いている理由として、複数サービスを動作させるためです。

理想としては 1 サービス 1 ホストとしたいですが、湯水のようにはお金は使えません。複数のサービスを動作させるためだけにこのような構成にしています。

理想としては、Wordpress コンテナ自体に Web サーバーの役割を果たす Apache がすでに内包されているため、そのまま待ち受けることが望ましいです。

### コンテナを動作させる

#### 準備

今回、特別に Dockerfile を記述することはありませんでした。理由としてはすでに使用できる Docker image が、Docker Hub に公開されているためです。

そのため今回主に記述したのは、docker-compose.yml となります。

```yaml
version: '3.1'

services:
wordpress:
image: wordpress:php7.1
restart: always
ports:
- 8080:80
environment:
WORDPRESS_DB_NAME: %WORDPRESS_DB_NAME%
WORDPRESS_DB_USER: %WORDPRESS_DB_USER%
WORDPRESS_DB_PASSWORD: %WORDPRESS_DB_PASSWORD%
WP_HOME: https://blog.mziyut.com
WP_SITEURL: https://blog.mziyut.com
volumes:
- ./wordpress/themes:/var/www/html/wp-content/themes
- ./wordpress/plugins:/var/www/html/wp-content/plugins
- ./wordpress/uploads:/var/www/html/wp-content/uploads
- ./wordpress/updraft:/var/www/html/wp-content/updraft
- ./wordpress/upgrade:/var/www/html/wp-content/upgrade
- ./wordpress/languages:/var/www/html/wp-content/languages
depends_on:
- mysql

mysql:
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: %MYSQL_ROOT_PASSWORD%
MYSQL_DATABASE: %WORDPRESS_DB_NAME%
MYSQL_USER: %WORDPRESS_DB_USER%
MYSQL_PASSWORD: %WORDPRESS_DB_PASSWORD%
volumes:
- ./data/db:/var/lib/mysql
```
%で囲まれた部分は、適宜書き換えてください。
構成の部分で触れましたが今回とてもシンプルなため、コード量もとても少ない印象です。
なぜ、volume 指定をしているかは、以下ドキュメントを参照してみてください。
Compose file version 3 reference | Docker Documentation (Volume configuration reference)
volume 指定しなければ、コンテナを落とした際にデータが飛ぶだけなので消してもいい場合記述する必要はありません。
#### 起動
準備したコンテナ等を立ち上げます。
まず、docker-compose.yml に記述したベースイメージを pull その後コンテナを立ち上げます。
```bash
cd /path/to/wordpress-docker-root/
ls -la
total 24
drwxr-xr-x 7 mziyut staff 224 Dec 24 03:56 .
drwxr-xr-x 5 mziyut staff 160 Dec 24 03:55 ..
drwxr-xr-x 12 mziyut staff 384 Dec 24 03:56 .git
-rw-r--r-- 1 mziyut staff 7 Dec 24 03:56 .gitignore
-rw-r--r-- 1 mziyut staff 19 Dec 24 03:56 README.md
-rw-r--r-- 1 mziyut staff 1073 Dec 24 03:56 docker-compose.yml
drwxr-xr-x 7 mziyut staff 224 Dec 24 03:56 wordpress
docker-compose pull
Pulling mysql (mysql:5.7)...
5.7: Pulling from library/mysql
f49cf87b52c1: Pull complete
78032de49d65: Pull complete
837546b20bc4: Pull complete
9b8316af6cc6: Pull complete
1056cf29b9f1: Pull complete
86f3913b029a: Pull complete
4cbbfc9aebab: Pull complete
8ffd0352f6a8: Pull complete
45d90f823f97: Pull complete
ca2a791aeb35: Pull complete
Digest: sha256:1f95a2ba07ea2ee2800ec8ce3b5370ed4754b0a71d9d11c0c35c934e9708dcf1
Status: Downloaded newer image for mysql:5.7
Pulling wordpress (wordpress:php7.1)...
php7.1: Pulling from library/wordpress
f49cf87b52c1: Already exists
185616061386: Pull complete
4330d62fa9e0: Pull complete
457292eacdcc: Pull complete
1acf2a966b64: Pull complete
c6c8840e3cd3: Pull complete
0aa8917ee733: Pull complete
3003eebbec26: Pull complete
ad2353b7ccbd: Pull complete
bc7ab65b6c7b: Pull complete
284e28fbafc6: Pull complete
15b93b7470f2: Pull complete
dc1651c8a361: Pull complete
2a91132e09c2: Pull complete
341479330e5d: Pull complete
c2c608737b35: Pull complete
4cd620feafb8: Pull complete
a7fc8fdd2d60: Pull complete
df7d12471dbb: Pull complete
Digest: sha256:e58f98987ce6d6233d6f423509f4beec2478ec1d6dee9cfcc3532d732f4536ab
Status: Downloaded newer image for wordpress:php7.1
docker-compose up -d
Creating network "blogmziyutcom_default" with the default driver
Creating blogmziyutcom_mysql_1 ...
Creating blogmziyutcom_mysql_1 ... done
Creating blogmziyutcom_wordpress_1 ...
Creating blogmziyutcom_wordpress_1 ... done
```

docker-compose に記載したホストへアクセスしてみましょう。
Wordpress のセットアップ画面が表示されました。
新規で立ち上げる人はそのままセットアップを進め、移行する人は移行してください。

### まとめ

今回、Wordpress を立ち上げるにあたって Dockerfile を記述することなく docker-compose.yml を記述することで動作させることが可能でした。
この理由は、前にも記述している Docker Hub のエコシステムがあってこそです。
私も OSS 等公開するときは、積極的に Docker のサポートし導入コストを下げるような取り組みをしていきます。

他のシステムも移行させたのでそれは後ほど別エントリで記述します。
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
Title: あけましておめでとうございます
Date: 2018-01-01T00:01:00+09:00
URL: https://mziyut.hatenadiary.com/entry/2018/01/01/happy-new-year/
EditURL: https://blog.hatena.ne.jp/mziyut112/mziyut.hatenadiary.com/atom/entry/6801883189080501983
---

あけましておめでとうございます。

昨年は、転職引っ越し等ドタバタした一年となりました。
また、緊急入院も経験しよりいっそ身体には気をつけるべきだと反省した一年でもあります。

個人的な目標として、以下です。

- 月 1 アウトプットする。
- 痩せる

改めて本年もよろしくお願いいたします。
32 changes: 32 additions & 0 deletions blog/entry/mziyut.hatenadiary.com/entry/2018/03/03/230003.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
Title: 中京テレビハッカソン HACK-CHU!(ハックチュー)に参加した
Category:
- Hackathon
- twilio
- IBM
- Node-RED
Date: 2018-03-03T23:00:03+09:00
URL: https://mziyut.hatenadiary.com/entry/2018/03/03/230003
EditURL: https://blog.hatena.ne.jp/mziyut112/mziyut.hatenadiary.com/atom/entry/6801883189080502171
---

誘われて 中京テレビハッカソン HACK-CHU!(ハックチュー)に参加した。

[https://www.ctv.co.jp/hackathon2018/:embed:cite]

予選(2018年2月17日)、本戦(2018年2月24日、25日)の合計3日間のハッカソンだった。チーム名は「なかよしフォーエバー」。 『ニコオコふうふ地雷探査機』というものを作った。

結果は、「twilio賞」だった。

[https://www.ctv.co.jp/hackathon2018/report.html:embed:cite]

<figure class="figure-image figure-image-fotolife" title="なかよしフォーエバー 『ニコオコふうふ地雷探査機』">[f:id:mziyut112:20240205235902p:plain]<figcaption>なかよしフォーエバー 『ニコオコふうふ地雷探査機』 <br>
https://www.ctv.co.jp/hackathon2018/report.html から引用</figcaption></figure>

私は、バックエンドとインフラ側を担当した。
ハッカソンということで、協賛企業が提供している IBM Bluemix 上に Node-RED を動作させた。ユーザーフィードバックには twilio を利用するなど ハッカソンならではの構成になった。 (限れれた工数でどうにかした)

予選 → 本線でメンバーがインフルでダウンしたりとバタバタ下がなんとか形になってよかったと思っている。

[https://github.com/nakayoshiForever:embed:cite]

Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
Title: Procedure for installing tig for Ubuntu 16.04
Category:
- Linux
- Ubuntu
Date: 2018-07-22T04:23:00+09:00
URL: https://mziyut.hatenadiary.com/entry/2018/07/22/procedure-for-installing-tig-for-ubuntu-16-04/
EditURL: https://blog.hatena.ne.jp/mziyut112/mziyut.hatenadiary.com/atom/entry/6801883189080501968
---

Procedure for installing tig for Ubuntu 16.04
I've written a procedure for installing tig

### Ubuntu Version

```sh
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
```

### Procedure for installing tig

#### package install

```sh
apt install tig
```

### manual install

```sh
$ cd /tmp
$ wget https://github.com/jonas/tig/releases/download/tig-2.4.0/tig-2.4.0.tar.gz
$ tar -zxvf tig-2.4.0.tar.gz
$ cd tig
$ ./configure
$ make
$ make install
```

### Tig Version

```
$ tig -v
tig version 2.0.2
```

### Reference

[https://jonas.github.io/tig:embed:cite]

[https://github.com/jonas/tig/:embed:cite]

Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
Title: ATEAM TECH MeetUp_Vol.02 の LT 枠で発表した
Category:
- Ateam
- AWS
- LT
Date: 2018-07-28T01:53:00+09:00
URL: https://mziyut.hatenadiary.com/entry/2018/07/28/ateam-tech-meetup-vol02-lt/
EditURL: https://blog.hatena.ne.jp/mziyut112/mziyut.hatenadiary.com/atom/entry/6801883189080501988
---

ATEAM TECH MeetUp_Vol.02 の LT 枠で発表した。

[https://www.a-tm.co.jp/recruit/news/event-9860/:embed:cite]

> AWS Device Farm を 用いた アプリケーションテスト - @mziyut
>
> エイチームライフスタイル 自動車事業部 新規事業開発チーム
>
> 担当サービスは、自動車関連新規事業<br>得意技術分野はバックエンド全般
>
> LT概要
>
> AWSが提供する、モバイルデバイスを使ったアプリケーションテストツールである「AWS Device Farm 」サービスを利用する方法をご紹介します。
LT 枠で話してと相談をもらって二つ返事で了承したので、話した内容はたまたま触っていた、 AWS Device Farm について話した<strong>。</strong>当日投影したスライドは以下。

<iframe src="https://www.slideshare.net/slideshow/embed_code/key/KGvuYQhjcvq8Hm?startSlide=1" width="597" height="486" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px;max-width: 100%;" allowfullscreen></iframe><div style="margin-bottom:5px"><strong><a href="https://www.slideshare.net/yutamizui3/ateam-tech-meetupvol02-aws" title="ATEAM TECH MeetUp_Vol.02 #AWS活用事例&交流会" target="_blank">ATEAM TECH MeetUp_Vol.02 #AWS活用事例&交流会</a></strong> from <strong><a href="https://www.slideshare.net/yutamizui3" target="_blank">Yuta Mizui</a></strong></div>
Loading

0 comments on commit f51bc19

Please sign in to comment.