Docker LNMP 集群配置

一. 环境搭建

在Ubuntu 14.04 上搭建

sudo apt-get install apt-transport-https ca-certificates
apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
lsb_release -c
vim /etc/apt/sources.list
apt-get update
apt-get install -y linux-image-extra-$(uname -r) apparmor init-system-helpers lsb-base libdevmapper1.02.1 libsystemd-journal0 docker-engine
docker run -t -i ubuntu:12.04 /bin/bash

利用 ngx_openresty 打造简易的 WAF (一)

WAF 和 ngx_openresty

WAF (Web Application Firewall) 网站应用防火墙。 对 GET/POST/COOKIE 的内容进行正则匹配,阻止常见的URL SQL注入攻击,屏蔽常见的扫描软件的UA,一定程度上增加网站被黑客黑掉的难度。

nginx 对客户端请求处理有多个处理阶段,可以利用 ngx_openresty 在 access 阶段 Lua 代码的灵活性,处理多种可能的威胁。

阿里云 Openresty+redis+PHP+Mysql环境搭建

一.准备工作

1.环境介绍

阿里云购买了入门级 ECS,配置如下:

CPU: Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz * 2
Memory: 4G
Disk: 40G
OS: Ubuntu 14.04 LTS
2.设置 swap 分区

必须吐槽下阿里云坑爹的设置,默认安装好系统没有帮忙设置 swap 分区。

$ sudo dd if=/dev/zero of=swapfile bs=4M count=1024 # 创建 4G 大小的文件(建议和内存一样)。
$ sudo mkswap swapfile # 生成 swap 格式。
$ sudo swapon swapfile # 挂载 swap 分区。
$ sudo vim /etc/fstab  # 设置 fstab, 使 swap 分区开机就默认被挂载。
=> 添加
/root/swap/swapfile swap swap defaults 0 0
3.设置权限

nginx 和 PHP-fpm 均已 www 用户启动,便于权限管理控制。

如果 nginx 和 PHP-fpm 用户不一致,会导致 PHP-fpm 接收不到 Nginx proxy_pass 的 sock,导致 502 错误;

$ useradd -M -s /sbin/nologin www

Vagrant 简单使用

一. 安装

Vagrant 本质上来说,是对 virtualbox,vmware,kvm 等镜像的管理操作,是一个中间层技术。使用它的前提是你本机必须有 virtualbox,vmware,kvm 等虚拟机。

Vagrant 的安装非常简单,各个 linux 发行版可以直接通过包管理安装,OS X 也可以通过 Homebrew Cask来安装。

$ brew cask install vagrant