Docker使用 LNMP
安装Docker
yum install docker
安装Mysql5.6并创建服务
docker pull mysql:5.6
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.6
安装PHP7.0-fpm创建服务
docker pull php:7.0-fpm
docker run -d -v /home/wwwroot/html:/usr/share/nginx/html -p 9000:9000 --name phpfpm php:7.0-fpm
PHP安装Mysqli拓展
docker exec -it phpfpm /bin/bash
docker-php-ext-install mysqli
exit
安装Nginx 以自定义配置创建服务
docker pull nginx
docker run --name nginx -p 80:80 -d -v /home/wwwroot/html/:/usr/share/nginx/html nginx
配置 nginx.conf
mkdir -p /home/wwwroot/conf
docker cp nginx:/etc/nginx/nginx.conf /home/wwwroot/conf/nginx.conf
配置 default.conf
mkdir -p /home/wwwroot/conf.d
docker cp nginx:/etc/nginx/conf.d/default.conf /home/wwwroot/conf.d/default.conf
docker stop nginx
docker rm nginx
创建Nginx服务
docker run -d -p 80:80 -v /home/wwwroot/html:/usr/share/nginx/html -v /home/wwwroot/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/wwwroot/logs:/var/log/nginx -v /home/wwwroot/conf.d:/etc/nginx/conf.d --link phpfpm --name nginx nginx:latest
问题
Docker映射目录访问返回403 Forbidden
原因是CentOS7中的安全模块selinux把权限禁掉了,主要是挂载的目录没有权限的问题chcon -Rt svirt_sandbox_file_t /home/wwwroot/html/
Docker开启nginx服务一直报错 /usr/bin/docker-current: Error response from daemon: oci runtime error: container_linux.go:235: starting container process caused "exec: \"--link\": executable file not found in $PATH"
创建Nginx的时候 –link 要放在 –name 的前面
总结
下一步需要打包和集群去构建使用场景

浙公网安备 33010602011771号