ps:假設讀者能夠在ubuntu環境下搭建lnmp環境的情況。
1、下載相應鏡像到本地
docker pull php:5.4-fpm
docker pull php:5.5-fpm
docker pull php:5.6-fpm
docker pull php:7.0-fpm
docker pull php:7.1-fpm
docker pull mysql:5.7
docker pull nginx:1.11
2、創建相應容器
#創建php:5.4-fpm的容器并命名php5.4,將容器的9000端口映射到主機的9000端口。把主機的/home/ubuntu/nginx/www目錄掛載到容器的/www目錄(這個目錄用于存放php腳本文件)
docker run -d -p 9000:9000 --name php5.4 -v /home/ubuntu/nginx/www:/www php:5.4-fpm
#在創建這個容器之前要先把前面創建的php5.4停止,不然9000端口會出現沖突。
docker run -d -p 9000:9000 --name php5.5 -v /home/ubuntu/nginx/www:/www php:5.5-fpm
#在創建這個容器之前要把前面創建的兩個都停止,不能同時運行多個php容器,要使用不同版本時,必須先stop正則運行的php容器,在start另一個版本的php容器
docker run -d -p 9000:9000 --name php5.6 -v /home/ubuntu/nginx/www:/www php:5.6-fpm
#創建nginx容器,把配置主機的/home/ubuntu/nginx/conf目錄掛載到容器的/etc/nginx/conf.d目錄,用于處理nginx的配置文件,文件根目錄與PHP的指向同一個
docker run -d -p 80::80 --name nginx1.11 -v /home/ubuntu/nginx/conf:/etc/nginx/conf.d -v /home/ubuntu/nginx/www:/www nginx:1.11
#創建mysql容器,-e MYSQL_ROOT_PASSWORD=123456將mysql容器的root密碼初始化為123456
docker run -d -p 3306:3306 --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
#創建infobright容器,與MySQL容器的創建方法類似
docker run -d -p 5029:5029 --name myinfobright -e MYSQL_ROOT_PASSWORD=root infobright:latest
#創建容器redis3.2, redis-server --apendonly yes 表示在容器執行redis-server啟動命令,并打開redis持久化配置
docker run -d -p 6379:6379 --name redis3.2 -v /home/ubuntu/redis/data:/data redis:3.2 redis-server --appendonly yes
docker run -d -p 11211:11211 --name memcached memcached:latest #創建memcached容器。

安裝鏡像中非自帶的php擴展:例如 php-redis 和 php-memcached 擴展:
php-redis擴展下載地址:https://github.com/phpredis/phpredis (選擇適合的版本下載)
php-memcached下載地址:https://github.com/php-memcached-dev/php-memcached (選擇適合版本下載)
可以在php容器內使用wget下載,也可以在ubuntu中下載后拷貝到容器中,我這里ubuntu中已經下載過這兩個擴展,就直接用docker cp 將這兩個擴展的源文件拷貝到php的容器中。
如果在容器中下載不要下載.zip類型,因為容器中沒有unzip命令。可以在ubuntu中解壓后將目錄拷貝進容器。
docker cp /data/phpredis3.1.2 php5.6:/usr/src/php/ext/redis #將ubuntu中的/data/phpredis3.1.2拷貝到容器的/usr/src/php/ext/目錄下并重命名為redis 。
docker-php-ext-install redis #安裝 php-redis 擴展
安裝memcached也是同理。。。
然后重啟該容器即可。
到這里,環境已經初步搭建完成,訪問主機的IP,可以查看運行情況,打印phpinfo查看擴展安裝情況。