WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站,WordPress 不仅仅是一个博客程序,也是一款CMS,很多非博客网站也是用WordPress搭建的。WordPress一般的安装方法是,在服务器上安装PHP,MySQL, Apache/NGINX之后下载WordPress的安装包,进行编译安装;自从docker容器出现后,WordPress安装较之前方便快许多。

安装Docker
在Centos系统上安装docker非常简单,只需要按照官方网站提供步骤进行操作即可,建议安装社区版的docker-ce也方便后期的维护。

安装WordPress
安装WordPress涉及到两个重要的镜像WordPress和MySQL,只需要解决好这两个关键docker容器,WordPress搭建就易如反掌。
1.MySQL安装

docker run -d --privileged=true --name zhouli-mysql -v /data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD= -p : mysql:5.7.

①--privileged=true;避免出现因为权限出现的异常
②--name;容器名
③-v;把数据库的数据挂载在宿主机指定的路径,保存数据
④-e;MYSQL_ROOT_PASSWORD设定root的登陆密码
⑤-p;设定对外开放的端口,如果只是内部使用也可以不用
补充:MySQL版本尽量根据WordPress的要求,避免出现不必要的异常

2.WordPress安装

docker run -d --name zhouli-wordpress -e WORDPRESS_DB_HOST=mysql -e WORDPRESS_DB_PASSWORD= -p : --link zhouli-sql:mysql wordpress

①-e;WORDPRESS_DB_HOST=mysql指定MySQL的连接地址,WORDPRESS_DB_PASSWORD也是root权限的连接密码
②--link;可以使用自定义的名称连接关联容器
③-p;指定映射端口为1080,为下一步nginx代理端口做准备
补充:默认是下载docker hub中最新的wordpress镜像
安装完毕后查看两个容器是否正常启动

最后调试
①nginx端口转发;把1080端口映射成80端口,为外网提供服务,并且新增判断模块强制http跳转https的功能,以下为具体实例。

upstream wp {
server 127.0.0.1:1080 ;
check interval=1000 rise=2 fall=2 timeout=3000 type=tcp port=1080;
} server {
listen 80;
server_name www.zhouzhifei.com zhouzhifei.com;
#access_log /data/log/nginx/zb.access.log main;
#error_log /data/log/nginx/zb.error.log;
root html;
    if ( $scheme = http ){
    return 301 https://$server_name$request_uri;
    }
location / {
proxy_pass http://wp;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_next_upstream error timeout http_502;
}
}

②调整https;可以在nginx配置SSL证书,但亲测过需要修改的地方比较多,所以建议使用http普通模式,登陆后台下载Really Simple SSL插件,直接勾选开启SSL。

③关于模板;WordPress有很多优秀的模板,推荐使用Kratos,非常适合个人博客。

Docker部署WordPress网站的更多相关文章

  1. 用lnmp架构部署wordpress网站详细步骤

    用lnmp架构部署wordpress网站 ①.下载和上传网站代码 用winscp或者xftp, 或者xshell下执行rz命令进行上传网站的包文件. ②.解压程序代码,并将程序代码保存到站点目录,并进 ...

  2. 24.docker 部署 wordPress

    1. 拉取远程 mysql 和 wordpress 镜像 并 启动起来 使用 docker pull mysql:5.7.27 docker pull wordpress 2. 创建mysql 的 c ...

  3. 使用docker部署WordPress博客系统(win10企业版)

    docker介绍: docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相 ...

  4. Docker学习笔记 - Docker部署nginx网站

    一.制作 nginx 镜像 1.下载配置文件 mkdir /opt/nginx_docker && cd /opt/nginx_docker mkdir nginx && ...

  5. docker 学习(九) docker部署静态网站

    一:  dockerfile, 把Dockerfile和myfolder放在一个目录下: FROM httpd:2.4 COPY ./myfolder/ /usr/local/apache2/htdo ...

  6. 快速搭建基于Azure Paas的高可用WordPress网站

    产品详情 产品介绍 WordPress是一种使用非常广泛的CMS系统.本应用是根据Azure Resource Manager模板创建的.通过该ARM模板可以快速建立web应用和MySQL数据库,部署 ...

  7. Docker Swarm应用--lnmp部署WordPress

    一.简介 目的:使用Docker Swarm 搭建lnmp来部署WordPress 使用Dockerfile构建nginx.php镜像 将构建的镜像上传docker私有仓库 使用volume做work ...

  8. Docker自学纪实(四)搭建LNMP部署wordpress

    我们在工作中最常用的就是LNMP网站平台 这个架构呢,是整个公司网站的核心 如果对于访问量较小的网站,可以直接在服务器上面部署 而如果是访问量很大的网站,那负载就是个很大的问题. 要么需要再买很多服务 ...

  9. 【docker构建】基于docker构建wordpress博客网站平台

    WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站.也可以把 WordPress当作一个内容管理系统(CMS)来使用. WordPre ...

随机推荐

  1. python基础认识

    Python基础 一.    简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言.豆瓣,Google.Yahoo等,甚至 ...

  2. HDU 6143 - Killer Names | 2017 Multi-University Training Contest 8

    /* HDU 6143 - Killer Names [ DP ] | 2017 Multi-University Training Contest 8 题意: m个字母组成两个长为n的序列,两序列中 ...

  3. Android系统输入事件分发详解

    什么是输入事件? 我们知道,运行android系统的设备本质上是一台计算机,使用者在和计算机进行交互的时候可以抽象成简单的对计算机的输入和输出(IO).那么对于运行在计算机上的操作系统来说,操作系统在 ...

  4. mysql远程服务密码修改

    GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";    FLUSH PRIVILEGE ...

  5. MySQL 8.0.15 配置 MGR单主多从

    转载自:http://www.cnblogs.com/zhangzihong/p/10443526.html 一.简介 MySQL Group Replication(简称MGR)字面意思是mysql ...

  6. tomcat大文件上传

    当服务器是Tomcat时,通过POST上传的文件大小的最大值为2M(2097152). 如果想修改该限制,修改方法如下: tomcat目录下的conf文件夹下,server.xml 文件中以下的位置中 ...

  7. 转载:appium踩过的坑

    原文地址:http://blog.csdn.net/wirelessqa/article/details/29188665 自己的操作:由于在window上安装appium时,报各种错误:所以选择在u ...

  8. [Luogu] 染色

    https://www.luogu.org/problemnew/show/P2486 qizha 为什么会wa #include <cstdio> #include <cmath& ...

  9. Codevs 1038 一元三次方程求解 NOIP 2001(导数 牛顿迭代)

    1038 一元三次方程求解 2001年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 白银 Silver 题目描述 Description 有形如:ax3+b ...

  10. Selenium中使用Cookies绕过登录

    在使用selenium测试后台时常常每个流程都需要走登录流程,这样自然比较浪费时间.如果遇到登录需要输入验证码等情况,就可能出师未捷身先死. 在Web应用中,登录状态通常是通过Cookie中对应的se ...