1.下载镜像
php:7.3-fpm
https://hub.docker.com/_/php?tab=tags&name=7.3-fpm
nginx
php:7.3-fpm
https://hub.docker.com/_/php?tab=tags&name=7.3-fpm
nginx
2.启动php镜像
docker run --name myphp-fpm -v 项目绝对路径:/www -d php:7.3-fpm
3.启动nginx镜像
docker run --name myruntime -p 80:80 -d \
-v 项目地址:/usr/share/nginx/html:ro \
-v nginx配置文件:/etc/nginx/conf.d:ro \
--link myphp-fpm:php \
nginx
docker run --name myruntime -p 80:80 -d \
-v 项目地址:/usr/share/nginx/html:ro \
-v nginx配置文件:/etc/nginx/conf.d:ro \
--link myphp-fpm:php \
nginx
//虚拟域名
10.0.0.201 映射app.supernova.com
//编辑配置文件
编辑nginx配置文件 指向laravel的public目录
10.0.0.201 映射app.supernova.com
//编辑配置文件
编辑nginx配置文件 指向laravel的public目录
4.进php-fpm的容器,安装composer
docker exec -it myphp-fpm /bin/bash 进去容器
docker exec -it myphp-fpm /bin/bash 进去容器
安装composer
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
mv composer.phar /usr/local/bin/composer
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
mv composer.phar /usr/local/bin/composer
5.安装 composer install
cd /www
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
apt-get install -y zip unzip
composer install
cp .env.example .env
php artisan key:generate
chmod -R 777 ./storage/
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
apt-get install -y zip unzip
composer install
cp .env.example .env
php artisan key:generate
chmod -R 777 ./storage/
6.使用docker-php-ext-install安装扩展
docker-php-ext-install pdo
7.因为容器前面只开一个80端口,所以在开启https的时候怎么都不通,因为没有暴露443端口,这里有2个办法
- 修改当前容器的配置文件, vim /var/lib/docker/containers/容器id/config.v2.json ,如下所示,然后在重启docker,重启容器
- 直接重新run一个容器,加上 -p 443:443