Docker搭建LANMP环境
第一种是直接从DockerHub上pull一个lamp的镜像。 (LAMP)
先搜一下。
C/C++ Code复制内容到剪贴板
- ##意思是搜索10星以上的镜像,行书越高,证明用的人越多。
- docker search -s 10 lamp
找到想要下载的镜像之后,执行docker pull 命令
C/C++ Code复制内容到剪贴板
- docker pull linode/lamp
完成之后查看镜像列表。
C/C++ Code复制内容到剪贴板
- docker images
执行命令,端口映射。
C/C++ Code复制内容到剪贴板
- docker run -d -p 81:80 linod/lamp
访问地址:
IP/81
第二种:从网上下载了一个集成包,可以自动化安装。(LANRMP--->Apache+Nginx+Redis+Php)
官方网址:
进入安装目录:
https://oneinstack.com/install/
C/C++ Code复制内容到剪贴板
- cd /tmp ##进入临时目录下载
- #阿里云经典网络下载
- wget http://aliyun-oss.linuxeye.com/oneinstack-full.tar.gz
- tar xzf oneinstack-full.tar.gz
- cd oneinstack #如果需要修改目录(安装、数据存储、Nginx日志),请修改options.conf文件
- screen -S oneinstack #如果网路出现中断,可以执行命令`screen -R oneinstack`重新连接安装窗口
- ./install.sh #注:请勿sh install.sh或者bash install.sh这样执行
如果没安装screen,安装一下:
C/C++ Code复制内容到剪贴板
- sudo apt-get install screen
进入docker容器,这里安装的是14版本的ubuntu
C/C++ Code复制内容到剪贴板
- sudo docker run -t -i ubuntu:14.04 /bin/bash
https://hub.docker.com/_/alpine/
C/C++ Code复制内容到剪贴板
- #只有5M
- docker pull alpine
1、下载相应镜像到本地
C/C++ Code复制内容到剪贴板
- 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、创建相应容器
C/C++ Code复制内容到剪贴板
- #创建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容器。
下一篇 docker常用命令