我们在工作中最常用的就是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. ssh设置别名

    通常我们在 Termianl 下用 ssh 链接远程主机的时候,每次都需要输入一长串的用户名加主机地址,是不是觉得很麻烦? 我们知道在 /etc/ssh/ 目录下通常都会有 ssh_config 和 ...

  2. 利用DOS命令做伪装成图片的压缩包,看上去是图片其实是个压缩包用2条命令即搞定

    在很多地方我们看到一张图片,然后把这张图片下载到本地,改后缀名为xx.rar,即变成了压缩包. 比如下面这个图片:(把以下图片保存到本地,后缀名xx.png 改为 xx.rar,解压试试) 怎么样,是 ...

  3. JavaScript 数组(Array)

    //声明方式 //调用 Array构造函数创建并赋值 var users = new Array(); //new 可以省略 ); //new 可以省略 var users3 = new Array( ...

  4. 构建web应用

    一.web服务器示例 var http = require('http'); http.createServer(function(req, res){ res.writeHeader(200, {C ...

  5. get post put delete

    get:获取资源 幂等 post:执行不安全和非幂等操作(幂等:多次请求于一次请求的效果一样) put:更新资源  幂等 delete:删除资源  幂等 如何理解幂等: public book { p ...

  6. elasticsearch增删改查crudp-----1

    Elasticsearch一些增删改查的总结 环境Centos7+Es 5.x 简单介绍下ES的原理: 1,索引  --相当于传统关系型数据库的database或schema 2,类型  --相当于传 ...

  7. JQ单双引号转义

    var temp = "${row.address_province}"; alert(temp);——————即变量temp alert("\'"+temp+ ...

  8. APK加固之静态脱壳机编写入门

    目录: 0x00APK加固简介与静态脱壳机的编写思路 1.大家都知道Android中的程序反编译比较简单,辛苦开发出一个APK轻易被人反编译了,所以现在就有很多APK加固的第三方平台,比如爱加密和梆梆 ...

  9. 【起航计划 013】2015 起航计划 Android APIDemo的魔鬼步伐 12 App->Activity->SetWallpaper 设置壁纸 WallpaperManager getDrawingCache使用

    SetWallpaper介绍如何在Android获取当前Wallpaper,对Wallpaper做些修改,然后用修改后的图像重新设置Wallpaper.(即设置>显示>壁纸>壁纸的功 ...

  10. 自顶向下理解Java集合框架(三)Map接口

    Map基本概念 数据结构中Map是一种重要的形式.Map接口定义的是查询表,或称查找表,其用于储存所谓的键/值对(key-value pair),其中key是映射表的索引. JDK结构中还存在实现Ma ...