我们在工作中最常用的就是LNMP网站平台

这个架构呢,是整个公司网站的核心

如果对于访问量较小的网站,可以直接在服务器上面部署

而如果是访问量很大的网站,那负载就是个很大的问题。

要么需要再买很多服务器做节点,要么就是现在流行的虚拟化。

我们知道一台加满硬盘和内存条的服务器至少需要3W人民币

这样的话对于公司来说可是不小的开支

所以很多公司开始招聘熟悉虚拟化的人才

Docker是现在很火的虚拟化技术

使用Docker部署服务

既简单又方便还省钱

来学学吧,很简单,就不到十条命令。

  • 环境:

CentOS7、MySQL镜像、nginx-php-fpm镜像、wordpress包

  • 思路

在CentOS7上装好Docker,下载镜像,运行镜像,配置MySQL,连接MySQL和nginx-php-fpm,最后测试

  • 下载镜像
 #pull MySQL镜像
[root@ ~]# docker search mysql
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/mysql MySQL is a widely used, open-source relati... [OK]
...........................................#出来很多镜像条目,一般我们选择STARS最高的
[root@ ~]#docker pull mysql
#等待pull完镜像,然后pull nginx-php-fpm镜像
[root@ ~]#docker search nginx
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/nginx Official build of Nginx. [OK]
docker.io docker.io/jwilder/nginx-proxy Automated Nginx reverse proxy for docker c... [OK]
docker.io docker.io/richarvey/nginx-php-fpm Container running Nginx + PHP-FPM capable ... [OK]
...........................................
[root@ ~]#docker pull docker.io/richarvey/nginx-php-fpm
#等待pull完镜像
#查看下载的镜像
[root@ ~]#docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/mysql latest f991c20cb508 days ago MB
docker.io/richarvey/nginx-php-fpm latest 359a8d82408a weeks ago MB
  • 运行&配置镜像容器
 [root@ ~]#docker run -itd --name lnmp_mysql -p : -e MYSQL_ROOT_PASSWORD=设置你的MySQL密码 myql
#lnmp_mysql:设置容器名称、MYSQL_ROOT_PASSWORD:变量
[root@ ~]#docker exec lnmp_mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD" -e "create database 数据库名"'
#$MYSQL_ROOT_PASSWORD:引用变量
[root@ ~]#docker run -itd --name lnmp_web -p : --link lnmp_mysql:db -v /container/web:/var/www/html docker.io/richarvey/nginx-php-fpm
#--link lnmp_mysql:db 是连接到MySQL数据库;-v /container/web:/var/www/html是把宿主机的路径映射到容器里面,冒号左边是宿主机路径,右边是容器内路径
  • 测试

测试成功,下载wordpress包。

wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz 
将wordpress包解压。并将里面文件移动到容器与宿主机映射的那个路径下。

然后重启这个容器,接着浏览器访问就可以了。

Docker自学纪实(四)搭建LNMP部署wordpress的更多相关文章

  1. CentOS7——搭建LNMP环境(WordPress案例)

    CentOS7--搭建LNMP环境(WordPress案例) LNMP组成介绍 LNMP(Linux-Nginx-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包括:Linux操作系统 ...

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

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

  3. Docker之使用Docker-compose搭建LNMP环境

    之前有随笔介绍使用Docker-compose搭建LNMP环境(centos6 php5.6) https://www.cnblogs.com/minseo/p/10146982.html 本文介绍D ...

  4. windows7搭建xmapp部署wordpress

    前言 为了学习自动化,在网上搜索资料学习了一下在本机安装xmapp,搭建php环境,本机部署wordpress这个开源项目 内容 主要分成以下几步: 准备安装包,快速安装xmapp 根据实际需求,修改 ...

  5. Docker自学纪实(六)搭建docker私有仓库

    docker的镜像仓库分两种:一种是从官方公有仓库拉取:还有就是自己搭建私有仓库.官方的镜像仓库是面对整个应用市场的:私有仓库一般用于公司内部,就是公司项目自身所需的镜像.搭建私有仓库有什么好处?私有 ...

  6. Docker自学纪实(五) 使用Dockerfile构建php网站环境镜像

    一般呢,docker构建镜像容器的方式有两种:一种是pull dockerhub仓库里面的镜像,一种是使用Dockerfile自定义构建镜像. 很多时候,公司要求的镜像并不一定符合dockerhub仓 ...

  7. Docker自学纪实(一)Docker介绍

    先简单了解一下,做个记录,以便不时之需. Docker简介:Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依 ...

  8. Docker自学纪实(三)Docker容器数据持久化

    谈起数据卷 我一直觉得是个枯燥无聊的话题 但是通过今天的实操和阅读 我发现其实并不是 其实就像走夜路 没有光明,第一次都是恐惧 但是如果走的次数多了 或者静下心来去克制恐惧 也许就会驾轻就熟或者等到黎 ...

  9. Docker自学纪实(二)Docker基本操作

    安装docker 以CentOS7为例: 安装:yum -y install docker 启动:systemctl start docker 设置开机自启:systemctl enable dock ...

随机推荐

  1. jquery中load()加载页面,刷新之后,加载的页面不显示的解决办法

    <script language="javascript" type="text/javascript"> $(function(){ $(&quo ...

  2. 导入的项目eclipse出现乱码的处理方法

    如果这样子还是出现乱码无法解决的话,则删掉当前项目重新开始项目.

  3. Access 2010入门、语文

    Access2010入门 数据管理库是按照数据结构来组织,存储和管理数据的仓库. 最早出现的数据库是网状DBMS 1970年,EFCodd博士提出关系模型的概念,提出关系模型的理论基础. SQL语言功 ...

  4. Oracle 求昨天 上个月 去年 日期

    到公司发现有一个报表没有收到,查看后发现原来是Oracle数据源异常. ' day, 'yyyyMMdd') AS enddata FROM DUAL; 上面这个sql求上个月今天和昨天.一般情况下不 ...

  5. maven课程 项目管理利器-maven 3-3 maven中的坐标和仓库

    本节主要讲了两大方面: 1 maven坐标 1.0  构件定义 任何依赖,插件,项目构建输出 都称之为构件. 1.1 maven坐标概念 groupid 公司或组织的域名倒序+当前项目名称 artif ...

  6. 从零开始的全栈工程师——js篇(正则表达式)

    正则 就是一条规则 用来检验字符串的格式 目标就是字符串 只要是通过表单提交的数据 都是字符串1.正则定义var reg = new RegExp( )var reg = /格式/ <--简写 ...

  7. web项目无法被Eclipse的Tomcat识别的解决办法

    Eclipse 导入外部项目无法识别为web项目并且无法在部署到tomcat下 1.进入项目目录,找到 .project 文件: 2.找到 <natures> 代码段,在里面加入如下标签内 ...

  8. (C# 基础) 类访问修饰符

    C# 中有5个权限修饰符,用于控制对对象的访问权限. 1. public:   访问不受限制. namespace, enum成员,interface成员 隐式的具有public 修饰符,不能在显式添 ...

  9. Android 5.0 以上监听网络变化

    大家好,大概有一个多月没有更新博客了,我是干什么去了呢?很明显,程序员当然要加班……这一次跟大家分享一下新项目的一些心得. 监听网络变化在开发中是经常用到的,例如我们断网有一些友好的提示,或者根据不同 ...

  10. UDoc(云平台企业应用级 文档管理产品)

    类型: 定制服务 软件包: integrated industry solution collateral 联系服务商 产品详情 解决方案 概要 为企业提供基于云平台企业应用级文档管理产品,尽可能最大 ...