Docker部署WordPress网站
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网站的更多相关文章
- 用lnmp架构部署wordpress网站详细步骤
用lnmp架构部署wordpress网站 ①.下载和上传网站代码 用winscp或者xftp, 或者xshell下执行rz命令进行上传网站的包文件. ②.解压程序代码,并将程序代码保存到站点目录,并进 ...
- 24.docker 部署 wordPress
1. 拉取远程 mysql 和 wordpress 镜像 并 启动起来 使用 docker pull mysql:5.7.27 docker pull wordpress 2. 创建mysql 的 c ...
- 使用docker部署WordPress博客系统(win10企业版)
docker介绍: docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相 ...
- Docker学习笔记 - Docker部署nginx网站
一.制作 nginx 镜像 1.下载配置文件 mkdir /opt/nginx_docker && cd /opt/nginx_docker mkdir nginx && ...
- docker 学习(九) docker部署静态网站
一: dockerfile, 把Dockerfile和myfolder放在一个目录下: FROM httpd:2.4 COPY ./myfolder/ /usr/local/apache2/htdo ...
- 快速搭建基于Azure Paas的高可用WordPress网站
产品详情 产品介绍 WordPress是一种使用非常广泛的CMS系统.本应用是根据Azure Resource Manager模板创建的.通过该ARM模板可以快速建立web应用和MySQL数据库,部署 ...
- Docker Swarm应用--lnmp部署WordPress
一.简介 目的:使用Docker Swarm 搭建lnmp来部署WordPress 使用Dockerfile构建nginx.php镜像 将构建的镜像上传docker私有仓库 使用volume做work ...
- Docker自学纪实(四)搭建LNMP部署wordpress
我们在工作中最常用的就是LNMP网站平台 这个架构呢,是整个公司网站的核心 如果对于访问量较小的网站,可以直接在服务器上面部署 而如果是访问量很大的网站,那负载就是个很大的问题. 要么需要再买很多服务 ...
- 【docker构建】基于docker构建wordpress博客网站平台
WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站.也可以把 WordPress当作一个内容管理系统(CMS)来使用. WordPre ...
随机推荐
- 可嵌入的脚本引擎 Jx9
Jx9是一个可嵌入的脚本引擎,基于JSON实现了图灵完备(Turing complete)的编程语言. Jx9 是那些需要流行和高效率脚本支持应用程序(比如:游戏.数据库系统,文本编辑器,网络应用程序 ...
- BZOJ 2039 / Luogu P1791 [2009国家集训队]employ人员雇佣 (最小割)
题面 BZOJ传送门 Luogu传送门 分析 考虑如何最小割建图,因为这仍然是二元关系,我们可以通过解方程来确定怎么建图,具体参考论文 <<浅析一类最小割问题 湖南师大附中 彭天翼> ...
- Vue项目创建build打包后可修改的配置文件
需要一个配置文件,能在项目打包(build)时不被打包,方便修改,同时项目刷新时读取改配置. 实现方法如下: 1.在项目的static目录下创建project.config.json文件(名称随意,建 ...
- /bin/sh: warning: setlocale: LC_ALL: cannot change locale (zh_CN.UTF-8) centos7
今天登陆centos 7 遇到一个 警告 /bin/sh: warning: setlocale: LC_ALL: cannot change locale (zh_CN.UTF-8) bash : ...
- 2019CCPC-江西省赛
目录 Contest Info Solutions A. Cotree C.Trap D.Wave F.String G. Traffic H.Rng I. Budget J. Worker K. C ...
- element-ui中el-table表格的使用(如何取到当前列的所有数据)
基本使用都不多说了, 我们知道这个表格组件,每个单元格内容是table绑定的data中的某个属性决定的,但是如果我们想根据这个属性值,渲染出另一个值呢,首先问题来了,我如何获得当前列的值, 查了查,我 ...
- 2019.6.24 校内测试 NOIP模拟 Day 2 分析+题解
看到Day 2的题真的想打死zay了,忒难了QwQ~ T1 江城唱晚 这明显是个求方案数的计数问题,一般的套路是DP和组合数学. 正如题目中所说,这个题是一个 math 题. ----zay ...
- git reset 版本回退操作
1 git回退命令 git reset --hard GIT_HEAD GIT_HEAD是你具体要回退的分支: 如图: 注: 查询GIT_HEAD可以通过两个命令:git log 获取未删除 ...
- 组件 computed 与 vuex 中 getters 的使用,及 mapGetters 的使用,对象上追加属性,合并对象
vue 是响应式的数据,这一点相当的方便我们的操作,但有些错误的操作方法会 vue 的响应无效 除此之外我们还要了解 vue.set() 和 Object.assgin() 的使用 vue.set() ...
- IO调度 | Linux块设备中的IO路径及调度策略
当文件系统通过submit_bio提交IO之后,请求就进入了通用块层.通用块层会对IO进行一些预处理的动作,其目的是为了保证请求能够更加合理的发送到底层的磁盘设备,尽量保证性能最佳.这里面比较重要的就 ...