五分钟利用docker搭建好php7.0.10+nginx服务环境

2024-03-21 15:48

本文主要是介绍五分钟利用docker搭建好php7.0.10+nginx服务环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

/home/wwwroot/ 为网站根目录
自动创建一个叫www的帐号,给网站、nginx、php专用
上面的域名为website.com,可以按需进行更改。
多域名的时候,进去~/nginx_config 复制多一份,进行修改即可

将下面文本保存为script.sh文件
在linux命令行下输入
sudo ./script.sh
即可一键搭建

系统:centos 7.0

#! /usr/binyum install -y docker
PHP_VERSION=7.0.10# PHP_VERSION 可以改为以下PHP版本的FPM
#7.0.10
#7.0
#7
#5.6.25
#5.6
#5service start docker
docker rm -f php
docker rm -f nginxgroupadd -g 2016 www
adduser -g 2016 -u 2016 wwwmkdir -p /home/wwwroot/
chown -R www:www /home/wwwroot/
chmod -R 755 /home/wwwroot/
{ \echo "<?php"; \echo "echo '<h1>This is one key web service for Docker.</h1>';"; \echo "echo 'php version is ${PHP_VERSION}';"; \
} | tee /home/wwwroot/index.phpdocker pull php:${PHP_VERSION}-fpmmkdir ~/php_config/
curl -o ~/php_config/php.ini https://raw.githubusercontent.com/php/php-src/php-${PHP_VERSION}/php.ini-productiondocker run --name php \
-v /home/wwwroot:/home/wwwroot \
-v ~/php_config/php.ini:/usr/local/etc/php/php.ini \
-p 9000:9000 \
-d php:${PHP_VERSION}-fpmdocker exec -it php sed -i "s/33/2016/g" /etc/passwd
docker exec -it php sed -i "s/33/2016/g" /etc/groupdocker pull nginx
mkdir ~/nginx_config/
{ \echo "server"; \echo "{"; \echo "    listen 80;"; \echo "    server_name website.com www.website.com;"; \echo "    index index.html index.htm index.php;"; \echo "    root  /home/wwwroot/;"; \echo ""; \echo "    location ~ \.php {"; \echo "        # try_files $uri =404;"; \echo "        fastcgi_pass php:9000;"; \echo "        fastcgi_index /index.php;"; \echo "        include fastcgi_params;"; \echo "        fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;"; \echo "    }"; \echo ""; \echo "    location /nginx_status"; \echo "    {"; \echo "        stub_status on;"; \echo "        access_log   off;"; \echo "    }"; \echo ""; \echo "    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)\$"; \echo "    {"; \echo "        expires      30d;"; \echo "    }"; \echo ""; \echo "    location ~ .*\.(js|css)?\$"; \echo "    {"; \echo "        expires      12h;"; \echo "    }"; \echo ""; \echo "    location ~ /\."; \echo "    {"; \echo "        deny all;"; \echo "    }"; \echo "}"; \
} | tee ~/nginx_config/website.confdocker run --name nginx -v /home/wwwroot:/home/wwwroot -v ~/nginx_config:/etc/nginx/conf.d --link php:php -p 80:80 -p 443:443 -d nginx
docker exec -it nginx sed -i "s/104:107/2016:2016/g" /etc/passwd
docker exec -it nginx sed -i "s/107/2016/g" /etc/group
docker restart nginx

这篇关于五分钟利用docker搭建好php7.0.10+nginx服务环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/833093

相关文章

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

SpringBoot快速搭建TCP服务端和客户端全过程

《SpringBoot快速搭建TCP服务端和客户端全过程》:本文主要介绍SpringBoot快速搭建TCP服务端和客户端全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录TCPServerTCPClient总结由于工作需要,研究了SpringBoot搭建TCP通信的过程

Nginx 访问 /root/下 403 Forbidden问题解决

《Nginx访问/root/下403Forbidden问题解决》在使用Nginx作为Web服务器时,可能会遇到403Forbidden错误,文中通过示例代码介绍的非常详细,对大家的学习或者工作... 目录解决 Nginx 访问 /root/test/1.html 403 Forbidden 问题问题复现Ng

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

debian12安装docker的实现步骤

《debian12安装docker的实现步骤》本文主要介绍了debian12安装docker的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录步骤 1:更新你的系统步骤 2:安装依赖项步骤 3:添加 docker 的官方 GPG 密钥步骤

史上最全nginx详细参数配置

《史上最全nginx详细参数配置》Nginx是一个轻量级高性能的HTTP和反向代理服务器,同时也是一个通用代理服务器(TCP/UDP/IMAP/POP3/SMTP),最初由俄罗斯人IgorSyso... 目录基本命令默认配置搭建站点根据文件类型设置过期时间禁止文件缓存防盗链静态文件压缩指定定错误页面跨域问题

Gradle下如何搭建SpringCloud分布式环境

《Gradle下如何搭建SpringCloud分布式环境》:本文主要介绍Gradle下如何搭建SpringCloud分布式环境问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Gradle下搭建SpringCloud分布式环境1.idea配置好gradle2.创建一个空的gr

Linux搭建单机MySQL8.0.26版本的操作方法

《Linux搭建单机MySQL8.0.26版本的操作方法》:本文主要介绍Linux搭建单机MySQL8.0.26版本的操作方法,本文通过图文并茂的形式给大家讲解的非常详细,感兴趣的朋友一起看看吧... 目录概述环境信息数据库服务安装步骤下载前置依赖服务下载方式一:进入官网下载,并上传到宿主机中,适合离线环境

nginx负载均衡及详细配置方法

《nginx负载均衡及详细配置方法》Nginx作为一种高效的Web服务器和反向代理服务器,广泛应用于网站的负载均衡中,:本文主要介绍nginx负载均衡及详细配置,需要的朋友可以参考下... 目录一、 nginx负载均衡策略1.1 基本负载均衡策略1.2 第三方策略1.3 策略对比二、 nginx配置2.1