0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

docker-composeでwordpressをサクッと作る

Last updated at Posted at 2019-09-23

(今更ながら)さくっとdocker-composeでworpdressを作ったので忘備録。
ubuntu18.04で書いてるけど、CentOSでもcomposeの操作は全く同じ。

dokcerとdocker-composeをインストール

dockerは公式の情報そのまんま入れます。
composeも最後に一緒に入れます。

・関連パッケージインストールとGPGキーの追加

sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

・フィンガープリント確認
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
と表示されていることを確認する

sudo apt-key fingerprint 0EBFCD88

・リポジトリ追加

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

・dockerとdocker-composeのインストール

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io

↑ここで一緒にdocker-composeも入れてOKだけど、ubuntu16.04などでは古いバージョンが入って
下記のymlファイルが上手く読み込めないので最新を取ってきます。
(2019/09/24時点での最新は1.24.1)

・docker-composeのインストール
インストールと言うより直接実行ファイルをダウンロードして実行権限をつけるだけ

curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

docker-compose.ymlを作る

下記の内容で~/workなど適当なディレクトリにdocker-compose.ymlという名前で保存する

docker-compose.yml
version: '3.1'

services:

  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress:/var/www/html

  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - db:/var/lib/mysql

volumes:
  wordpress:
  db:

・設定で気になるところを直す

例えば
・ ports: 待ち受けポート 8080じゃなくて80にしてもよい
・ DB_USER / DB_PASSWORD / DB_NAME : DB接続情報。好きな値に変更してOK
変更した場合は下のMYSQL_DATABASE/MYSQL_USER/MYSQL_PASSWORD も同じ内容に変更する

起動

root以外でも使いたい場合は下記コマンドで使用ユーザを指定してログインしなおす

sudo usermod -aG docker ユーザ名

※dokcerが使える=サーバを色々操作できる強力な権限を与える為、必要無いならこのコマンド入れずに下記コマンドの頭にsudoつける方法でもよい。

docker-compose.ymlがあるディレクトリに移動して

docker-compose up -d

これで起動完了。
サーバ落とすなどで起動を一旦停止する場合は

docker-compose stop

再度動かす場合は

docker-compose start

コンテナ自体を削除する場合は

docker-compose down

でOK

あとは http://自分のサーバIP(or ドメイン):指定したポート
でアクセスできる。
wordpressのインストール画面が出てきたら完了です。
image.png

dockerのrunコマンドでパラメータ指定するよりdocker-compose.ymlで設定するほうが見やすのでcomposeオススメ。
複数コンテナもまとめて書けるので管理がしやすい。


参考:
docker 公式ページ(インストール方法など):https://docs.docker.com/install/linux/docker-ce/ubuntu/
Docker Hub - wordpress : https://hub.docker.com/_/wordpress

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?