Docker快速搭建WordPress博客网站

WordPress是一个非常著名的PHP编写的博客平台,发展到目前为止已经形成了一个庞大的网站平台系统。在WP上有规模庞大的插件和主题,可以帮助我们快速建立一个博客甚至网站。
在Windows上可以非常方便的安装WordPress,因为IIS上集成了WordPress的一键安装包。而在Linux上安装WordPress就比较复杂了,我们需要配置PHP环境、Apache或者Nginx服务器、MySQL数据库以及各种权限和访问问题。所以在Linux上最好的办法就是使用Docker来安装WordPress。
安装Docker
如果是Windows平台,可以参考在Windows平台上搭建Docker开发环境。如果在Linux环境中,按照所使用的Linux的包管理器来安装Docker即可。顺便还可以安装Kitematic,这是一个非常好用的Docker图形界面工具。
安装完成之后需要启用Docker后台服务。如果是国内用户的话可能还需要设置Docker加速,可以参考Docker 镜像加速器-博客-云栖社区-阿里云。
安装WordPress
有了Docker,安装WordPress就很简单了,直接一条命令搞定。
docker pull wordpress:latest
安装MySQL
WordPress需要使用MySQL数据库,这里也有两种方式,第一种是安装本地MySQL,第二种就是在Docker中安装MySQL镜像。如果要在Docker中安装MySQL也非常简单,同样一条命令搞定。
docker pull mysql:latest
如果从Docker中安装MySQL,还需要额外的配置来启动MySQL,具体文档参考这里。启动MySQL使用下面的命令。
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
name
参数指定要启动的实例名称,MYSQL_ROOT_PASSWORD
指定ROOT密码。tag
参数是MySQL的版本号,可以是5.7
、5.6
、8.0
。
配置WordPress
安装好数据库之后,就可以启动WordPress了。详细的文档参考这里。如果使用Docker中安装的MySQL实例,使用下面的命令。
docker run --name some-wordpress --link some-mysql:mysql -p 8080:80 -d wordpress
name
参数指定要启动的WordPress实例名称,link
参数指定要使用的Docker MySQL实例名称,p
参数将Docker内部的80端口映射到本地的8080端口上。
如果使用外部的MySQL数据库,则输入下面的命令。
docker run --name some-wordpress -e WORDPRESS_DB_HOST=10.1.2.3:3306 \
-e WORDPRESS_DB_USER=... -e WORDPRESS_DB_PASSWORD=... -d wordpress
WORDPRESS_DB_HOST
参数是MySQL的数据库端口号,WORDPRESS_DB_USER
是要数据库用户名,WORDPRESS_DB_PASSWORD
是数据库密码。这里的WORDPRESS_DB_HOST
参数不能填写localhost
,因为这样会重定向到WordPress镜像内部的localhost
,而这个镜像中实际上没有安装MySQL。所以这里需要填写本机IP地址,才能正确访问到Docker外部的本机的数据库。
因此需要注意,如果使用外部数据库的话,数据库的用户需要具有外部IP的权限,因为这次不是通过本机回环地址访问。默认情况下MySQL安装时候的ROOT用户只允许本地登录,所以可能需要配置允许用户远程登录。
然后打开浏览器,输入localhost:8080
(端口号是命令中设置的),然后就可以看到WordPress了。按照提示输入用户名等信息,然后安装WordPress。等到它提示安装完成,那么WordPress的安装就算大功告成了。
最后稍加配置,再添加诸如内网映射等功能之后,站点就可以对外访问了。

Docker快速搭建WordPress博客网站的更多相关文章
- Linux_基于Docker快速搭建个人博客网站
时间:2017年04月28日星期五 说明:基于docker技术,使用jpress开源框架搭建个人博客网站.特别感谢jpress开源项目.系统版本:CentOS 7.2-64bit. 步骤一:准备Doc ...
- 用docker快速搭建wordpress博客
WordPress是一个非常著名的PHP编写的博客平台,发展到目前为止已经形成了一个庞大的网站平台系统.在WP上有规模庞大的插件和主题,可以帮助我们快速建立一个博客甚至网站. 在Windows上可 ...
- 巨杉Tech | 十分钟快速搭建 Wordpress 博客系统
介绍 很多互联网应用程序开发人员第一个接触到的网站项目就是博客系统.而全球使用最广的Wordpress常常被用户用来快速搭建个人博客网站.默认情况下,Wordpress一般在后台使用MySQL关系型数 ...
- 从零到一快速搭建个人博客网站(域名自动跳转www,二级域名使用)(二)
前言 本篇文章是对上篇文章从零到一快速搭建个人博客网站(域名备案 + https免费证书)(一)的完善,比如域名自动跳转www.二级域名使用等. 域名自动跳转www 这里对上篇域名访问进行优化,首先支 ...
- 基于docker搭建wordpress博客网站平台
WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站.也可以把 WordPress当作一个内容管理系统(CMS)来使用. WordPre ...
- LNMP架构之搭建wordpress博客网站
系统环境版本 [root@db02 ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@db02 ~]# uname -a Lin ...
- 从零到一快速搭建个人博客网站(域名备案 + https免费证书)(一)
环境介绍 资源 说明 centos v7.2 docker 快速部署项目环境 nginx 反向代理,同时配置https证书 halo v1.4.2,开源博客项目 Let's Encrypt 免费证书 ...
- 快速搭建WordPress博客
博主在看了朋友的博客后 决定也搭建一个wordPress 博客 思路 1.购买服务器 2.Cenots环境配置 3.安装wordpress 工具 推荐使用 Xshell 6,当然也可以用其他 服务器推 ...
- 在腾讯云上面搭建WordPress博客网站
一.准备工作 我们使用腾讯云服务器来运行WordPress,腾讯云会给新用户七天的产品体验时间还有一些代金券,做为新手尝试成本是比较小的. 腾讯云长期举办 "云+校园" 活动,学生 ...
随机推荐
- 22.doublewrite/ChangeBuffer/AHI/FNP
一. Double Write1 Double Write介绍 • Double Write的目的是为了保证数据写入的可靠性, 避免partial write 的情况 ◦ partial write( ...
- ES6 快速开始
Refs 现代框架 Vue React 都使用到了 ES6 (包括D3js) [常量] // ES5 中常量的写法 Object.defineProperty(window, "PI2&qu ...
- TypeScript 快速学习
https://learnxinyminutes.com/docs/zh-cn/typescript-cn/ https://www.tslang.cn/docs/handbook/basic-typ ...
- mongodb 添加字段并设置默认值
db.doc名称.update({}, {$set: {新字段名称: 默认值}}, false, true) 如:db.fly_bill.update({}, {$set: {usableStatus ...
- SQL SERVER中一些常见性能问题的总结
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免使用 left join 和 null 值判断.left join 比 in ...
- Nginx 关闭日志生成文件
nginx 关闭日志:其实一种方法就是写入/dev/null 文件 或者设置关闭: nginx 日志有两个类型 access.log http 记录访问日志. error.log server ...
- new和delete动态分配和撤销内存
视频:C++引用及new和delete的使用 一.new用法 使用new运算符时必须已知数据类型,new运算符会向系统堆区申请足够的存储空间,如果申请成功,就返回该内存块的首地址,动态分配失败,则返回 ...
- 找出程序GasMileage中的哪一行与下列叙述相对应:
找出程序GasMileage中的哪一行与下列叙述相对应: a.通知程序将使用Scanner类 import java.util.Scannner; b.创建一个Scanner类的对象 Scan ...
- 20165237 2017-2018-2 《Java程序设计》第5周学习总结
20165237 2017-2018-2 <Java程序设计>第5周学习总结 教材学习内容总结 1.内部类:在一个类中定义另一个类:外嵌类:包含内部类的类. 2.内部类的类体中不能声明类变 ...
- SpringBoot的Web配置
重写全局配置 如果springboot提供的springmvc配置不符合要求,则可以通过一个配置类(标有@Configuration注解的类)加上@EnableWebMvc注解来实现完全自己控制的mv ...