DNMP一键部署PHP8.2和Laravel10的Docker环境
后台-插件-广告管理-内容页头部广告(手机) |
DNMP一键部署PHP8.2和Laravel10的Docker环境
服务器环境
所有命令皆在root用户下运行
VMware虚拟机下的ubuntu22.04
docker24.0.7
docker-compose 2.6.1
yeszao/dnmp开源仓库仓库地址:https://gitee.com/yeszao/dnmp
本文章只提供整个部署的过程,对docker、dockerFile以及docker-compse的知识最好有初步的认识,才能更好的理解
流程
① 首先在/www文件夹拉取dnmp项目,代码如下:
root$ mkdir /www #根目录下创建www文件夹 root$ cd /www #切换到www目录 root$ git clone https://gitee.com/yeszao/dnmp.git #克隆dnmp项目 root$ cd dnmp #切换到dnmp文件夹 root$ cp env.sample .env # 复制环境变量文件 root$ cp docker-compose.sample.yml docker-compose.yml # 复制 docker-compose 配置文件。默认启动3个服务: # Nginx、PHP7和MySQL8。要开启更多其他服务,如Redis、 # PHP5.6、PHP5.4、MongoDB,ElasticSearch等,请删 # 除服务块前的注释- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
② 创建Laravel项目(在dnmp的www文件夹下) 请忽略第二步,在这里创建项目不是我们的目的,等容器启动完在进入PHP容器创建较为稳妥,除非你是要将已有的项目clone到这里
- 1
- 2
- 3
③ 修改dnmp的.env文件使用php8.2版本
root$ vim .env #编辑 .env文件- 1
在.env文件中找到以下内容
PHP80_VERSION=8.0.30
PHP80_PHP_CONF_FILE=./services/php80/php.ini
PHP80_FPM_CONF_FILE=./services/php80/php-fpm.conf
PHP80_LOG_DIR=./logs/php80
PHP80_EXTENSIONS=pdo_mysql,mysqli,mbstring,gd,curl,opcache
将 8.0.30 改为8.2并保存退出
PHP80_VERSION=8.2
④ 修改nginx容器的配置文件
root$ vim services/nginx/conf.d/localhost.conf- 1
改动如下图(四处改动,root的第二个是你laravel项目的主目录名,这里只为快速启动,想要将laravel项目配置到其他端口可以新建配置文件,再到docker-compose.yml进行端口映射即可)
⑤ 修改docker-compose文件,找到php80的位置
- 1
⑥ 启动各个容器(这里启动mysql5、nginx、php80;ps:若为mysql8则将mysql5改为mysql即可)
- 1
等待docker对各个镜像的下载和编排启动,一般不会出什么问题,若出错请百度其他文章解决, 有个小坑,如果你也和我一样使用VMware的话,请不要在共享文件夹进行这些操作,否则编排容器时会报错,我找不到解决办法 ┭┮﹏┭┮
出现以下界面即为启动成功,或者查看docker容器,是否存在你启动的容器
⑦别急,最后一步,按照docker的理念,我们应该进入php80容器执行php以及composer命令,创建laravel10项目
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
最后
- 给个赞?
- 项目端口为80,请访问服务器or虚拟机的ip地址即可
- 对于dnmp的更多详细内容请阅读仓库的yeszao/dnmp 的 Readme.md
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。
在线投稿:投稿 站长QQ:1888636
后台-插件-广告管理-内容页尾部广告(手机) |