haloi 发表于 2019-2-20 07:50:57

docker安装WordPress

  1、下载php-apache镜像
  web服务器中执行以下操作:
  docker pull php:7.2-apache
  下载完成使用docker images 命令查看一下在的镜像
https://s1.运维网.com/images/blog/201901/09/49a0806e38bc3eae6f86c46de6629057.png
  2、创建生成mysql、httpd-php容器的脚本
web中:
  vim docker_web.sh
#!/bin/bash
docker run --name httpd-php-p 80:80 \ -v /data/docker/httpd/conf:/etc/apache2/sites-enabled \ -v /data/docker/www:/var/www/html \ -v /data/docker/httpd/logs:/var/log/apache2 \ -d php:7.2-apache
  mysql中:
  vim docker_mysql.sh
#!/bin/bash
docker run --name mysql-p 3306:3306 \ -v /data/docker/mysql/data:/var/lib/mysql \ -v /data/docker/mysql/conf:/etc/mysql/conf.d \ -v /data/docker/mysql/logs:/logs \
-e MYSQL_ROOT_PASSWORD=test123456 \ #设置mysql的root密码
-d mysql:latest --character-set-server=utf8 #使用utf8编码
  ###注意脚本里有注释可能会报错 docker: invalid reference format###
3、启动mysql、httpd-php容器
web中:
  sh docker_web.sh
https://s1.运维网.com/images/blog/201901/09/b02b2a38314886afb9f51a9506320152.png
mysql中:
sh docker_mysql.sh
https://s1.运维网.com/images/blog/201901/09/c9c46400b1e03397acfff8c04a21a4ae.png
4、测试web服务器
在命令行输入
  echo "" > /data/docker/www/index.php
  打开浏览器访问web服务器的ip地址
https://s1.运维网.com/images/blog/201901/09/f8522b892fd58824d5488c0888939551.png
5、修改mysql的密码加密方式
修改mysql的密码加密方式为mysql_native_password
vim /data/docker/mysql/conf/docker_mysql.cnf
   default-authentication-plugin=mysql_native_password
如果不修改加密方式的话,低版本的mysql客户端登陆时会报错
6、数据库操作
  登陆mysql容器,创建、配置wordpress数据库
  docker exec -it mysql /bin/bash mysql -uroot -ptest123456
  mysql> create database wordpress;
mysql> create user wps@localhost identified by '123456';
mysql> grant all privileges on wordpress. to wps@localhost;
mysql> create user wps@192.168.8.126 identified by '123456';
mysql> grant all privileges on wordpress. to wps@192.168.8.126;
mysql> alter user wps@192.168.8.126 identified with mysql_native_password by '123456';
mysql> create user wps@192.168.8.127 identified by '123456';
mysql> grant all privileges on wordpress.* to wps@192.168.8.127;
mysql> alter user wps@192.168.8.127 identified with mysql_native_password
by '123456';
mysql> exit
  7、连接测试
在web1和web2中:
PHP5.0开始就不推荐使用mysql_connect()函数了,而到了php7.0则直接废弃了该函数,替代的函数是mysqli_connect()
进入到mysql容器里安装mysqli扩展
  docker exec -it httpd-php /bin/bash
apt-get update
apt-get install libpng-dev
cd /usr/local/bin/
./docker-php-ext-install gd mysqli
./docker-php-ext-enable gd mysqli
exit
docker restart httpd-php
  编写一个测试连接mysql的php
  vim /data/docker/www/con.php

  打开浏览器输入192.168.8.126/con.php
https://s1.运维网.com/images/blog/201901/09/5bedbe1f0c7380882828875d2264d5c0.png
8、下载wordpress博客系统并配置
  wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz
tar -zxvf wordpress-4.9.4-zh_CN.tar.gz -C /data/docker/www/
  浏览器访问http://192.168.8.126/wordpress
https://s1.运维网.com/images/blog/201901/09/45027968724bf8e596b9f9f05428695c.png
  如图填写,注意主机写安装了mysql服务的虚拟机ip
https://s1.运维网.com/images/blog/201901/09/d97d0e68efc09ccd593ed2dfb8f2a3c0.png
  点击完提交会弹出如下页面,按照自己的想法填写即可。
https://s1.运维网.com/images/blog/201901/09/19e053d042cb71c1fa74700f220fdb5e.png
  点击完安装WordPress后会弹出安装成功的页面
https://s1.运维网.com/images/blog/201901/09/8e421c067a791f1a0c7a5de018425228.png
登陆
https://s1.运维网.com/images/blog/201901/09/f56a74ce9354ffb3d7a8d106dc80ef12.png
到这里就可以设置自己的博客了!
https://s1.运维网.com/images/blog/201901/09/43b31a932baffb44103f7d9445efa6a1.png
9、验证wordpress数据库
mysql主机的容器里连接数据库:
  mysql -u root -ptest123456
https://s1.运维网.com/images/blog/201901/09/6b36e9c23db98cd4892adf1ec8b33040.png
  显示数据库
https://s1.运维网.com/images/blog/201901/09/72c06fb49df052e4dc28afa5d358b4bf.png
  使用wordpress数据库
https://s1.运维网.com/images/blog/201901/09/1dd7a1facbe355255f67e9a4bb63dffb.png
显示wordpress数据库里的表
https://s1.运维网.com/images/blog/201901/09/bf96b490cf516dfc24d16e17193c5719.png
选择wp_users表里的所有内容
https://s1.运维网.com/images/blog/201901/09/db0f7163c729d20fe7d26bf6b05cc2fd.png
可以看到已经有了lxc这个账户。
10、查看博客
浏览器访问http://192.168.8.126/wordpress
https://s1.运维网.com/images/blog/201901/09/1dc8eec7da9aca07a07b4654f87cb5cc.png



页: [1]
查看完整版本: docker安装WordPress