DNMP一键部署PHP8.2和Laravel10的Docker环境

这篇具有很好参考价值的文章主要介绍了DNMP一键部署PHP8.2和Laravel10的Docker环境。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

DNMP一键部署PHP8.2和Laravel10的Docker环境

DNMP一键部署PHP8.2和Laravel10的Docker环境,docker,运维,laravel

服务器环境

所有命令皆在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等,请删
                                                      # 除服务块前的注释

② 创建Laravel项目(在dnmp的www文件夹下) 请忽略第二步,在这里创建项目不是我们的目的,等容器启动完在进入PHP容器创建较为稳妥,除非你是要将已有的项目clone到这里

root$ cd www  #进入dnmp的www文件夹
root$ composer create-project laravel/laravel Laravel10 #创建Laravel项目,并命名为Laravel10
root$ cd .. #回到dnmp文件夹进行下一步操作

③ 修改dnmp的.env文件使用php8.2版本

root$ vim .env #编辑 .env文件

在.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

改动如下图(四处改动,root的第二个是你laravel项目的主目录名,这里只为快速启动,想要将laravel项目配置到其他端口可以新建配置文件,再到docker-compose.yml进行端口映射即可)

DNMP一键部署PHP8.2和Laravel10的Docker环境,docker,运维,laravel
DNMP一键部署PHP8.2和Laravel10的Docker环境,docker,运维,laravel
⑤ 修改docker-compose文件,找到php80的位置

root$ vim docker-compose.yml

DNMP一键部署PHP8.2和Laravel10的Docker环境,docker,运维,laravel
⑥ 启动各个容器(这里启动mysql5、nginx、php80;ps:若为mysql8则将mysql5改为mysql即可)

root$ docker-compose up mysql5 nginx php80

等待docker对各个镜像的下载和编排启动,一般不会出什么问题,若出错请百度其他文章解决, 有个小坑,如果你也和我一样使用VMware的话,请不要在共享文件夹进行这些操作,否则编排容器时会报错,我找不到解决办法 ┭┮﹏┭┮
出现以下界面即为启动成功,或者查看docker容器,是否存在你启动的容器
DNMP一键部署PHP8.2和Laravel10的Docker环境,docker,运维,laravel
⑦别急,最后一步,按照docker的理念,我们应该进入php80容器执行php以及composer命令,创建laravel10项目

root$ docker ps #查看运行中的容器,主要是为了查看php80容器的id
root$ docker exec -it 19faa598ed76 sh #19faa598ed76 请改为你直接的php80容器id
/www$ composer create-project laravel/laravel Laravel10 #创建laravel10项目
#建议将更改composer为国内镜像源,https://learnku.com/articles/15977/composer-accelerate-and-modify-mirror-source-in-china
/www$ chown -R www-data:www-data /www/Laravel10/storage #若你使用mysql5进入容器后请运行此条命令
/www$ chmod -R 775 /www/Laravel10/storage	#若你使用mysql5进入容器后请运行此条命令,否则无法写入日志文件报错
									  #进入容器后就是简单的Laravel初始化操作了,即安装依赖以及生成appkey
									  #composer install
									  #php artisan key:generate
		 							  #初始化完成后exit退出容器控制台

DNMP一键部署PHP8.2和Laravel10的Docker环境,docker,运维,laravel文章来源地址https://www.toymoban.com/news/detail-807411.html

最后

  • 给个赞?
  • 项目端口为80,请访问服务器or虚拟机的ip地址即可
  • 对于dnmp的更多详细内容请阅读仓库的yeszao/dnmp 的 Readme.md

到了这里,关于DNMP一键部署PHP8.2和Laravel10的Docker环境的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker环境一键部署若依微服务版

    若依管理系统是基于SpringBoot的权限管理系统,可以用它作为基础构建自己的后台管理系统。这个项目在 Gitee 上有1.8 万个 star。 它有3 个版本,分别是单体版、前后端分离版、微服务版。这次是使用 docker部署他的微服务版本。 微服务版项目源代码包括 docker 部署的相关代码,

    2024年02月06日
    浏览(48)
  • docker compose一键部署lnmt环境

    创建docker compose 目录 [root@localhost ~]#  mkdir -p /compose_lnmt 编写nginx的dockerfile文件 创建目录 [root@localhost compose_lnmt]# mkdir -p nginx [root@localhost nginx]# vim nginx.conf   [root@localhost nginx]# vim Dockerfile 创建数据存放目录 [root@localhost compose_lnmt]# mkdir -p /var/www/html/ [root@localhost compose_lnmt]# mkdir

    2024年02月14日
    浏览(36)
  • docker 部署 nginx+php+mysql 环境

    记录一下docker部署web服务器流程。nginx,mysql,php不同的版本配置内容可能会不同。 docker常用命令 目录结构 创建目录 运行PHP容器 php容器内容目录结构如下: PHP5.4升级后,php.ini-dist不见了,出现了php.ini-developmen和php.ini-production。 php.ini-development 对应于 php.ini-dist,适合开发测

    2024年04月24日
    浏览(82)
  • Docker部署nginx+php环境,简单可用!

    第一步: 安装Docker 访问下面地址,根据你的需要下载安装docker运行环境。 下载docker desktop https://www.docker.com/ 如果你是Windows、macOS(Intel/M1)、Linux桌面OS,都可以下载到对应版本进行安装,相对命令行方式,更加简单方便。 安装完成后,运行docker desktop,显示如下界面: 在任

    2024年02月07日
    浏览(43)
  • Docker部署php运行环境(php-fpm+nginx)

    前言 如果使用docker去部署一套php的运行环境,我们需要构建出nginx、php-fpm两个容器,nginx通过fast_cgi协议去转发php-fpm中的端口,从而实现web server的搭建,接下来以php的laravel框架为演示例子。 部署php-fpm 第一步 编写php-fpm镜像的Dockerfile: ./Dockerfile 第二步 配置Crontab定时任务:

    2024年02月06日
    浏览(57)
  • docker容器下php框架laravel的使用问题与解决方案

    DB_CONNECTION=mysql DB_HOST=localhost DB_CONNECTION=mysql DB_HOST=docker33-mysql-1 容器中只有数据库结构 进入MySQL容器内,创建表结构,添加数据 代码层面需要转换成数组 $query - get ( [\\\'*\\\'] )- toArray () ; 分页数据框架会返回带有data的数据,如果循环记得加上

    2024年01月23日
    浏览(73)
  • Docker的配置和部署,并搭建php和nginx环境

    服务器环境:CentOS 7.6 说下体验: 通过安装进度还是有些报错出现的,但是一向“兼容不错的宝塔”还是对他抱有一线希望。 最后还是安装成功了。  装好了,如何使用? Docker 是基于命令行使用的,那现在通过一些实际问题去使用一些命令! 1.首先查看是否安装成功。通过

    2024年02月09日
    浏览(48)
  • Docker Ubuntu php nginx mysql redis 开发环境部署教程

    点击: ubuntu 22.04 配置多版本 php nginx mysql redis 超简单教程

    2024年02月08日
    浏览(56)
  • 基于Jenkins自动打包并部署docker、PHP环境,ansible部署-------从小白到大神之路之学习运维第86天

    第四阶段提升 时  间:2023年8月23日 参加人:全班人员 内  容: 基于Jenkins部署docker、PHP环境 目录 一、环境部署 (一)实验环境,服务器设置 (二)所有主机关闭防火墙和selinux,修改主机名 (三)配置git主机 (四)配置jenkins主机 (五)Jenkins配置 二、基于Jenkins自动打包

    2024年02月11日
    浏览(63)
  • 在 CentOS 7.4 上使用 Docker极速部署 LNMP (Linux, Nginx, MySQL, PHP) 环境和 WordPress

    前置CentOS7条件: 关闭防护墙: setenforce = 0 systemctl stop firewalld 1. 安装 Docker* 如果你的系统中还没有安装 Docker,可以使用以下命令进行安装:   sudo yum install docker 启动 Docker 服务并设置开机自启: sudo systemctl start docker sudo systemctl enable docker 2. 安装 Docker Compose Docker Compose 可以让

    2024年01月17日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包