概述

使用docker的好处就是尽量减少了环境部署,可靠性强,容易维护,我使用docker搭建wordpress的主要目标有下面几个
首先我重新生成数据库容器可以保证数据库数据不丢失,重新生成wordpress容器保证wordpress网站数据不丢失,尽量让两个容器处于无状态运行中,所有数据保存在本地,方便备份和恢复

mysql容器方面

首先我是在树莓派上做这个实验的,用的是别人做好的arm版本的mysql镜像,其实和官方的mysql镜像是一样的,没有任何区别,就是名字不一样而已,生成容器的命令如下
docker run --name mysql-wordpress -d -v /root/mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD="woyaoxuehuilinux" hypriot/rpi-mysql
解释一下参数,--name就是给容器取名字。-d就是把它放在后台运行,-v加上后面的目录表示把容器中的/var/lib/mysql目录和宿主机中的/root/mysql-data目录做映射,把数据库数据保存在本地,-e后面加的参数就是设置mysql的密码,最后就是使用的镜像的名字

wordpress容器方面

直接上运行参数
docker run --name wordpress -d -p 80:80 --link mysql-wordpress:mysql -v /root/wordpress-html:/var/www/html wordpress

还是先解释下参数--name就是给容器取名字,-d就是把容器放在后台运行-p表示容器的80端口和宿主机的80端口做映射--link表示和刚才生成的mysql容器做连接,-v表示把网站的目录和宿主机中的/root/wordpress-html做映射最后就是要使用的镜像的名字了

测试

如果你pull完镜像,并且执行了上面的运行命令之后,直接访问主机的ip应该就是wordpress选择语言安装界面了,按照流程把wordpress安装完成,然后我们发布一篇文章,接着我们停止并且删除mysql容器
docker stop mysql-wordpress
docker rm mysql-wordpress
之后访问网站显示Error establishing a database connection
就是表示连接不上数据库了,这说明是正常的
之后我们重新云翔创建mysql容器时候的命令
docker run --name mysql-wordpress -d -v /root/mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD="woyaoxuehuilinux" hypriot/rpi-mysql
接着访问网站,发现网站可以正常访问
接着测试继续,我们删除数据库容器和网站容器
docker stop mysql-wordpress wordpress
docker rm mysql-wordpress wordpress
接着 访问网站,此时网站肯定不能访问,之后我们重新创建这两个容器
docker run --name mysql-wordpress -d -v /root/mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD="woyaoxuehuilinux" hypriot/rpi-mysql
docker run --name wordpress -d -p 80:80 --link mysql-wordpress:mysql -v /root/wordpress-html:/var/www/html wordpress
然后访问网站
见证奇迹的时刻
网站可以正常访问,数据也没有丢失

怎么备份网站?

从上面我们就可以总结出备份网站的步骤了,首先保存两个执行容器的命令到一个文本文件,接着把mysql-datawordpress-html打包备份就好了,容器的启动时间只要几秒钟,所以如果你要做一个安全的网站架构你可以这么做,把上面我说的两个目录保存在存储中,容器运行在服务器上,或者使用k8s去管理容器,当然存储也是需要做备份的,这样只要就可以保证服务的超级可靠性了。

欢迎关注Bboysoul的博客www.bboysoul.com
Have Fun

使用docker搭建wordpress网站相关推荐

  1. wordpress 通过域名无法访问_VPS主机和宝塔面板搭建WordPress网站教程

    这是一篇Wordpress建站教程,记录了我在VPS主机上,通过使用宝塔面板,搭建Wordpress网站或个人博客的详细步骤,外贸新人或小白在建立网站的时候可以作为参考. WordPress是全球最流 ...

  2. 基于京东云云主机搭建WordPress网站

    1 摘要 本文描述基于京东云云主机,搭建WordPress网站所需的MySQL数据库和Web应用,并在完成Plugin配置后发布一篇博文的全过程.本文将用到如下京东云资源: 云主机(m.n2.larg ...

  3. 用Docker搭建WordPress博客

    目录 用Docker搭建WordPress博客 一.WordPress简介 二.Docker安装 三.下载mysql镜像及wordpress镜像 四.启动mysql及wordpress 五.访问及初始 ...

  4. 在本地怎么使用phpstudy搭建WordPress网站

    在本地怎么使用phpstudy搭建WordPress网站(小白学习版) 工具准备 WordPress网站:可以使用一下提取码下载,也可以到官网上下载最新版本 链接:https://pan.baidu. ...

  5. 体验云上快速搭建WordPress网站小记

    1月12日下午到北京阿里总部体验云上快速搭建WordPress网站,一次完美的体验,小记于此. 美好的一天,以一碗超赞的小面开始,饕餮之余,就是跟随张会长义无反顾的穿越京城.抵达望京阿里中心, 已然下 ...

  6. 使用 Docker 搭建 WordPress 博客

    Docker Docker 是一个应用容器引擎,可以将应用运行时环境打包到一个容器中,打包后的容器可移植到任何一个 Linux 环境下运行,能有效避免繁琐的配置步骤,下面是使用 Docker 搭建 W ...

  7. 新手搭建 WordPress 网站终极解决方案 基于 Bitnami 堆栈快速搭建完美个人博客(Blog)

    为了搭建一个自己的博客,对于没有相关知识的我来说,真的时相当不容易,经过很长时间的摸索研究,总算是搭起了这个博客(Blog),那么第一篇文章就是来记录一下,经过反复的折腾后感觉最适合我自己的一个方法, ...

  8. 腾讯云服务器搭建WordPress网站教程(全流程)

    已经有了腾讯云服务器如何搭建网站?腾讯云服务器网以腾讯云服务器,借助宝塔面板搭建Web环境,然后使用WordPress博客程序搭建网站,大致分为三步,首先购买腾讯云服务器,然后在腾讯云服务器上部署宝塔 ...

  9. 本地搭建WordPress网站,并发布外网可访问

    在现代社会,网络已经成为我们生活离不开的必需品,而纷繁多样的个人博客网站,也成为了个人展示的最好平台.在以往,想要搭建一个个人博客网站需要较深的专业知识,但得益于软件技术的发展,就算普通人也可以在几个 ...

最新文章

  1. UI设计培训分享:ui设计师如何培养设计思维?
  2. 0.2 秒居然复制了一个 100G 文件?怎么做到的?
  3. 纪念逝去的岁月——C/C++字符串反转
  4. 《Ext JS权威指南》印出来了,大家很快就能拿到书了
  5. 从web.xml谈谈SpringMVC集成spring的初始化流程及SpringBoot集成SpringMVC
  6. 设置vim语法高亮显示和自动缩进
  7. 【英语学习】【Level 07】U07 Stories of my Life L6 An experience worth remembering
  8. 【Unity】4.5 树木创建器
  9. foxmail 批量导入收件人邮箱信息
  10. prayaya v3-国产神操作系统
  11. 2022秋招蚂蚁金服数据研发一面
  12. H指数(h-index)的Python实现
  13. 使用饭碗警告实现简单的用户反馈通知
  14. 一文读懂,WMS仓库管理系统模块功能
  15. 代理商分销订货系统(电脑、H5、小程序、APP)多端全套源码
  16. 【毕业设计】天气数据分析系统 - python 大数据
  17. 众驰伟业:实现业财一体化,支撑企业数字化转型
  18. ESP Wi-Fi 连接异常断开原因排查分析
  19. 第二届2011年国信蓝点杯软件设计大赛预赛的试题3
  20. STM32F1与STM32CubeIDE编程实例-麦克风声音传感器驱动

热门文章

  1. 全网最细之抽象类讲解
  2. oracle adg switch over,Oracle11gr2_ADG管理之switchover补充
  3. ubuntu下android源码编译环境,ubuntu12.04 64位上搭建android源码编译环境
  4. js简易计算机代码if语句,简单学习下JS里的if语句的写法
  5. java集合系列_Java集合系列01-Java集合概述
  6. matlab语音信号处理实验_现代通信综合实验系统平台
  7. java 从控制台读取_转载 java从控制台读取输入的方法
  8. android 開發人員模式,Android
  9. 反积分饱和 程序_用抗积分饱和PID控制传递函数为G(s)的被控对象
  10. 数据结构算法模拟系统