Centos 7使用docker部署LAMP搭建wordpress博客系统
0、简要概述
LAMP是目前比较流行的web框架,即Linux+Apache+Mysql+PHP的网站架构方案。docker是目前非常流行的虚拟化应用容器,可以为任何应用创建一个轻量级、可移植的容器。现在我们就来通过docker来部署LAMP环境,并且搭建wordpress博客系统来测试。
系统环境
操作系统版本:Centos 7.5 64位
Docker版本:18.06.1-ce(社区版)
ip地址:192.168.2.226
lamp网络ip地址:172.18.0.1
前提条件:
- 关闭selinux
- 已经安装好docker
1、下载mysql、php-apache镜像
docker pull mysql
docker pull php:7.2-apache
创建自定义网络lamp
docker network create lamp
docker network ls

2、创建生成mysql、httpd-php容器的脚本
vim docker_lamp.sh
#!/bin/bash
function mysql() {
docker run --name mysql --net lamp -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 \
-d mysql:latest --character-set-server=utf8
}
function httpd_php() {
docker run --name httpd-php --net lamp -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
}
$1
3、启动mysql、httpd-php容器
bash docker_lamp.sh mysql
bash docker_lamp.sh httpd_php
4、写一个php的首页文件来进行测试
echo "<?php phpinfo(); ?>" > /data/docker/www/index.php
通过浏览器访问http://192.168.2.226
5、修改mysql的密码加密方式为mysql_native_password
vim /data/docker/mysql/conf/docker_mysql.cnf
[mysqld]
default-authentication-plugin=mysql_native_password
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@172.18.0.1 identified by '123456';
mysql> grant all privileges on wordpress.* to wps@172.18.0.1;
mysql> alter user wps@172.18.0.1 identified with mysql_native_password by '123456';
mysql> flush privileges;
mysql> exit
exit
7、下载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/
8、配置wordpress博客
- 修改wp-config-sample.php配置
cd /data/docker/www/wordpress/
mv wp-config-sample.php wp-config.php
vim wp-config.php #修改以下内容
/ WordPress数据库的名称 */
define('DB_NAME', 'wordpress');
/ MySQL数据库用户名 */
define('DB_USER', 'wps');
/ MySQL数据库密码 */
define('DB_PASSWORD', '123456');
/ MySQL主机 */
define('DB_HOST', '172.18.0.1');
/ 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8');
/ 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');
- 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
- 修改wp-db.php文件,将mysql_connect替换为mysqli_connect
cd /data/docker/www/wordpress/
sed -i "s/mysql_connect/mysqli_connect/g" wp-includes/wp-db.php
11、重新配置wordpress博客
浏览器访问http://192.168.2.226/wordpress
按前面的步骤填写完连接mysql的配置信息后,看到如下页面,表示mysql连接成功。
需要手工创建wp-config.php文件,将以上信息贴入wp-config.php文件中
vim /data/docker/www/wordpress/wp-config.php
然后点击“现在安装”,出现以下页面
输入完以上信息后,点击“安装WordPress”
至此,wordpress博客系统就搭建完成了。
Centos 7使用docker部署LAMP搭建wordpress博客系统的更多相关文章
- 巨杉Tech | 十分钟快速搭建 Wordpress 博客系统
介绍 很多互联网应用程序开发人员第一个接触到的网站项目就是博客系统.而全球使用最广的Wordpress常常被用户用来快速搭建个人博客网站.默认情况下,Wordpress一般在后台使用MySQL关系型数 ...
- 在github Pages上部署octopress搭建个人博客系统
原文链接:http://caiqinghua.github.io/blog/2013/08/26/deploy-octopress-to-github-pages/ 引子 上一篇博客已经说了为什么要搭 ...
- 在centOS上搭建wordpress博客系统
一.主要内容 1.安装LAMP服务器系统(Linux.Apache.MySQL.PHP ); 2.安装wordpress: 二.具体步骤 一.LAMP环境设置 1.安装LAMP系统,在centOS上可 ...
- Docker搭建wordpress博客环境(Centos7)
Docker搭建wordpress博客环境(Centos7) 升级系统 yum -y update 设置docker库 sudo yum install -y yum-utils sudo yum-c ...
- 使用docker部署WordPress博客系统(win10企业版)
docker介绍: docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相 ...
- AWS之EC2搭建WordPress博客
AWS之搭建WordPress博客 注意:请确定您已经成功完成LAMP架构的搭建; 1.下载并解压WordPress安装包: ①使用wget命令在WordPress官网获取最新安装包: [ec2-us ...
- 搭建WordPress博客程序库
搭建WordPress博客程序库 wordpress简介 wordpress是一套利用PHP语言和Mysql数据库开发的开源免费的Blog(博客,网站)程序,用户可以在支持PHP环境和Mysql数据库 ...
- 搭建wordpress博客
环境说明 操作系统: CentOS 7.2 64位 1. 准备LAMP环境 LNMP 是 Linux.Nginx.MySQL 和 PHP 的缩写,是 WordPress 博客系统依赖的基础运行环境.我 ...
- 搭建 WordPress 博客教程
搭建 WordPress 博客教程(超详细) 在 2018年7月29日 上张贴 由 suncent一条评论 本文转自:静候那一米阳光 链接:https://www.jianshu.com/p/5675 ...
随机推荐
- Redis集群模式介绍
前言: 一.为什么要使用redis 1,解决应用服务器的cpu和内存压力 2,减少io的读操作,减轻io的压力(内存中读取) 3,关系型数据库扩展性,不强,难以改变表的结构 二.优点 1,nosql数 ...
- LeetCode 232:用栈实现队列 Implement Queue using Stacks
题目: 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部. pop() -- 从队列首部移除元素. peek() -- 返回队列首部的元素. empty() -- 返回队列是 ...
- ELK 框架整体流程编写 以及logstash脚本编写
Elasticsearch Elasticsearch 是一个实时的分布式搜索和分析引擎,它可以用于全文搜索,结构化搜索以及分析.它是一个建立在全文搜索引擎 Apache Lucene 基础上的搜索引 ...
- 第四节:Geo类型介绍以及Redis批量操作、事务、分布式锁
一. Geo类型 1. 类型说明 Geo 是 Redis 3.2 版本后新增的数据类型,用来保存兴趣点(POI,point of interest)的坐标信息.可以实现计算两 POI 之间的距离.获取 ...
- Lucene的全文检索学习
Lucene的官方网站(Apache的顶级项目):http://lucene.apache.org/ 1.什么是Lucene? Lucene 是 apache 软件基金会的一个子项目,由 Doug C ...
- 2019-6-15-WPF-触摸到事件
原文:2019-6-15-WPF-触摸到事件 title author date CreateTime categories WPF 触摸到事件 lindexi 2019-06-15 08:58:54 ...
- Winform中设置ZedGraph多条Y轴时与多条曲线一一对应
场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...
- MySQL基础(三)(操作数据表中的记录)
1.插入记录INSERT 命令:,expr:表达式 注意:如果给主键(自动编号的字段)赋值的话,可以赋值‘NULL’或‘DEFAULT’,主键的值仍会遵守默认的规则:如果省略列名的话,所有的字段必须一 ...
- springcloud分布式事务Atomikos实例
0.JTA(Java Transaction Manager)的介绍 (1)jta与jdbc 简单的说 jta是多库的事务 jdbc是单库的事务 (2)XA与JTA XA : XA是一个规范或是一个事 ...
- jQuery遍历 - 过滤first(),last()和eq()使用
jQuery遍历 - 过滤最基本的过滤方法是first(),last()和eq(),它们允许您根据元素在一组元素中的位置选择特定元素. 其他过滤方法(如filter()和not())允许您选择与特定条 ...