一直听说Docker比较厉害,但是一直没有了解,今天在哔哩哔哩上刷了一下入门课后,简直发现新大陆般,Docker的强大真的了解太晚了。这篇使用Docker搭建php7环境的文章需要一点入门知识。下面开始。

环境

首先安装Docker,无论你是Windows还是Linux、MocOS都可以。安装Docker自行百度。

Docker镜像源

安装Ngnix镜像

输入:

docker pull nginx

安装php镜像

docker pull php:7.1.30-fpm

实例化

实例化准备

新建几个文件夹,分别用来映射:网站根目录、nginx配置文件、日志文件

mkdir -p ~/nginx/www ~/nginx/logs ~/nginx/conf

在新建的www目录中新建:index.php用来检测php环境是否搭建成功:

phpinfo();

?>

在nginx配置文件目录conf下新建:test-php.conf,后缀是.conf即可:

server {

listen 80;

server_name localhost;

location / {

root /usr/share/nginx/html;

index index.html index.htm index.php;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root /usr/share/nginx/html;

}

location ~ \.php$ {

fastcgi_pass php:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /www/$fastcgi_script_name;

include fastcgi_params;

}

}

这是php最常见的默认配置,默认就好。

实例化php

docker run --name myphp7 -v ~/nginx/www:/www -d php:7.1.30-fpm

实例化nginx

docker run --name php-nginx -p 80:80 -v ~/Documents/dock/nginx/www:/usr/share/nginx/html -v ~/Documents/dock/nginx/conf:/etc/nginx/conf.d --link myphp7:php -d nginx

这是指定端口,网站根目录,网站配置文件目录,其实没有指定网站日志目录,不知道你有没有看出来,哈哈哈!

输入docker ps看看:

43037ce40b00

docker ps

访问:127.0.0.1

43037ce40b00

phpinfo()界面

当然这是完全顺利的结果,需要前期不断尝试,刚刚试了很多坑才明白其中的一些细节。弄明白后使用觉得Docker部署真的是方便快捷,沙盒机制很干净。

挖个小坑,接下来继续研究,Flask+uwsgi+nginx使用docker需要怎么操作部署。

Logo

一站式 AI 云服务平台

更多推荐