2018年6月6日水曜日

LXDでphpMyAdminとMariaDBがインストールされたコンテナ(Ubuntu18.04)を構築する

phpMyAdminでブラウザからMariaDBを操作する事ができます。

〇phpMyAdminの画面


ブラウザでhttp://<ホストのIP>/phpmyadmin/にアクセスします。ユーザ名/パスワードはroot/rootまたはtest1/test1です。

〇構築方法
LXDで以下のコマンドを実行して、phpMyAdminとMariaDBがインストールされたコンテナを構築します。
lxc init ubuntu:18.04 ub1804phpmyadminmariadb
lxc config set ub1804phpmyadminmariadb user.user-data - < config.yml
lxc start ub1804phpmyadminmariadb

config.yml
#cloud-config

package_upgrade: true

hostname: ub1804phpmyadminmariadb
manage_etc_hosts: true

runcmd:
  - 'echo "mariadb-server-10.0 mysql-server/root_password password root" | sudo debconf-set-selections'
  - 'echo "mariadb-server-10.0 mysql-server/root_password_again password root" | sudo debconf-set-selections'
  - 'apt-get -y install mariadb-server'
  - "mysql -uroot -proot -e \"SET PASSWORD FOR root@localhost=PASSWORD('');\""
  - mysql -uroot -proot -e "CREATE DATABASE test1 DEFAULT CHARACTER SET utf8mb4;"
  - mysql -uroot -proot -e "CREATE USER test1@localhost IDENTIFIED BY 'test1';"
  - mysql -uroot -proot -e "GRANT ALL PRIVILEGES ON test1.* TO 'test1'@'localhost';"
  - mysql -uroot -proot -e "FLUSH PRIVILEGES;"
  - 'echo "phpmyadmin phpmyadmin/dbconfig-install boolean true" | debconf-set-selections'
  - 'echo "phpmyadmin phpmyadmin/mysql/admin-pass password root" | debconf-set-selections'
  - 'echo "phpmyadmin phpmyadmin/reconfigure-webserver multiselect apache2" | debconf-set-selections'
  - 'echo "phpmyadmin phpmyadmin/mysql/app-pass password root" | debconf-set-selections'
  - 'apt-get -y install phpmyadmin'
  - mysql -uroot -proot -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' identified by 'root';"
  - mysql -uroot -proot -e "FLUSH PRIVILEGES;"
  - service apache2 restart
final_message: "completed."

〇コンテナに入る
lxc exec ub1804phpmyadminmariadb /bin/bash

〇ホストマシンの外部からコンテナにアクセスしたい場合
PORT=80 PUBLIC_IP=<ホストのIP> CONTAINER_IP=<コンテナのIP> sudo -E bash -c 'iptables -t nat -I PREROUTING -i eth0 -p TCP -d $PUBLIC_IP --dport $PORT -j DNAT --to-destination $CONTAINER_IP:$PORT -m comment --comment "container"'

〇コンテナのIPを調べる
コンテナのIPは以下のコマンドで調べることができます。
lxc list

〇コンテナの停止
lxc stop ub1804phpmyadminmariadb

〇コンテナの削除
lxc delete ub1804phpmyadminmariadb


〇関連情報
・phpMyAdminに関する他の情報はこちらを参照してください。

・プロジェクトwebサイト
https://www.phpmyadmin.net/

0 件のコメント:

コメントを投稿