WordPress on Docker with phpMyAdmin

  • 2019年7月17日
  • 2019年7月20日
  • 優
  • 628view
優

Docker

 

社内共有用に作成したものです、WEBから配布することにします。

10時から新人さんがくるんだが…!

 

WordPressの脆弱性検査とAWS WAFでどれほど守られるかといった検証を行って頂こうと思います。

その為のものです。

 

 

環境

  • AWS EC2

 

 

開発環境構築

 

ディレクトリの作成

$ mkdir -p $HOME/project/{wordpress,db_data,git,shell}

 

検証環境作成用スクリプト

$ vi $HOME/project/shell/1_init_Setup_local.sh


#!/bin/bash
set -e
 
# スクリプトディレクトリの取得
SCRIPT_DIR=`dirname $0`
cd $SCRIPT_DIR


# 開発ツールインストール
sudo yum groupinstall -y "Development Tools"
sudo yum -y install git zip mailx unzip htop rsync



## docker-composeインストール
echo "docker-composeインストール...Start" &&
sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose &&
sudo chmod +x /usr/local/bin/docker-compose &&
echo "docker-composeインストール...End" &&
 
 
## Dockerインストール
echo "Dockerインストール...Start" &&
sudo yum install -y docker &&
sudo usermod -aG docker ${USER} &&
sudo gpasswd -a $USER docker &&
 
sudo systemctl restart docker &&
sudo systemctl enable docker &&
sudo systemctl status docker &&
echo "Dockerインストール...End" &&
 
 
## PHP7.2インストール
echo "PHP7.2インストール...Start" &&
sudo amazon-linux-extras install -y php7.2 &&
sudo amazon-linux-extras install -y epel &&
sudo yum install -y php-common php-gd php-mysqlnd php-mbstring php-pdo php-xml php-zip php-pecl-zip &&
sudo yum install -y git mailx tree &&
echo "PHP7.2インストール...End" &&
 
 
## MySQLクライアントインストール
echo "MySQLクライアントインストール...Start" &&
sudo yum install -y mysql &&
echo "MySQLクライアントインストール...End" &&
 
## Redisクライアント
echo "Redisクライアントインストール...Start" &&
sudo yum install -y redis &&
echo "Redisクライアントインストール...End" &&
 
 
# サーバの更新と再起動
echo "サーバの更新と再起動...Start" &&
sudo yum update -y &&
sudo reboot now

 

# chmod +x $HOME/project/shell/1_init_Setup_local.sh
# sh $HOME/project/shell/1_init_Setup_local.sh

 

 

WordPress on Docker環境の作成

 

docker-compose.ymlの作成

# vi $HOME/project/docker-compose.yml


version: '3.3'

services:
   wordpress:
     container_name: "wordpress"
     image: wordpress:latest
     depends_on:
       - db
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress
     ports:
     - "80:80"
     volumes:
       - ./wordpress:/var/www/html

   db:
     image: mysql:5.7
     container_name: "mysql57"
     volumes:
       - ./db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: root
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress
   pma:
     container_name: "pma"
     image: phpmyadmin/phpmyadmin:latest
     environment:
       PMA_HOST: db
     ports:
     - "8080:80"
     restart: always
     links:
       - db


volumes:
   db_data:
   wordpress:

 

docker-composeによるDockerの起動

$ cd $HOME/project/
$ docker-compose up -d

 

 

WordPressにアクセス

http://IPアドレス/

 

 

phpMyAdminにアクセス

http://IPアドレス:8080

 

ログイン情報

  • ユーザ:wordpress
  • パスワード:wordpress

 

 

Dockerの全削除

docker stop $(docker ps -q)
docker rm $(docker ps -q -a)
docker rmi $(docker images -q)

 

 

 

 

最新情報をチェックしよう!
>システム構築・保守に特化した会社です。

システム構築・保守に特化した会社です。

システムの構築・保守運用「システムガーディアン」 社内システム担当が欲しいが、専属で雇うほどの仕事量はない。 必要な時に必要なだけ頼りたいというお悩みを持つ企業様へ専門知識を持って対応を行っております。 サーバから各種システムまで自社・他社で構築されたシステムに対してサポートを行っております。

CTR IMG