当前位置: 首页 > 知识库问答 >
问题:

在laravel中自动执行项目

诸葛砚
2023-03-14

我有一个应用程序在Laravel与.env.local文件(a和我做了下一个docker-comment文件:

api:
container_name: nadal_api
build:
  context: .
  dockerfile: Dockerfile
volumes:
  - .:/var/www/html/app
ports:
  - ${APP_PORT}:80
links:
  - db
  - redis

还有我的Dockerfile:

FROM composer:latest AS composer

WORKDIR /var/www/html/app/



FROM php:7.2-fpm-stretch

RUN apt-get update && apt-get install -y \
    supervisor \
    nginx \
    zip

ADD docker/nginx.conf /etc/nginx/nginx.conf ADD
docker/virtualhost.conf /etc/nginx/conf.d/default.conf ADD
docker/supervisord.conf /etc/supervisor/conf.d/supervisord.conf

ARG enviroment

COPY --from=composer /usr/bin/composer /usr/bin/composer

COPY .env.local .env RUN chmod -R g+w /var/www/html/app/bootstrap

RUN composer install RUN php artisan key:generate

EXPOSE 80

CMD ["/usr/bin/supervisord"]

我希望克隆存储库,并在docker compose构建时在dockerfile中执行以下操作:

  1. 重命名.env.local. env
  2. 给存储文件夹权限。我有一个错误在这一行
RUN chmod -R g+w /var/www/html/app/bootstrap

chmod: cannot access '/var/www/html/app/bootstrap': No such file or
directory

共有1个答案

皮骏
2023-03-14

Dockerfile中,没有COPY操作将所有当前项目代码复制到创建的图像中。因此,映像中不存在引导文件夹。所以chmod告诉你这一点。

卷(此行-.:/var/www/html/app)将在稍后根据映像结构创建时将当前目录与容器同步。所以,若您想授予引导文件夹权限,那个么在授予该文件夹权限之前,将项目代码复制到映像中。在权限操作之前添加此行以使文件夹可访问。

COPY . /var/www/html/app
 类似资料:
  • 本文向大家介绍在Python中自动执行PDF,包括了在Python中自动执行PDF的使用技巧和注意事项,需要的朋友参考一下 使用的模块: 在此脚本中,我们将使用PyPDF2模块,该模块将为我们提供各种功能,例如提取数据,读取pdf文件,拆分文件并写入新文件。 下载PyPDF2: 通用方式:pip安装PyPDF2 Pycharm用户:转到python项目解释器并从那里安装它。 PyPDF2提供的各种

  • 我在一个laravel项目中意外地运行了命令,该命令显然删除了autoload_real.php 我得到这些错误消息时,运行: “PHP警告:require(C:\xampp\htdocs\e-commerce\vendor\composer/。/symfony/polyfill ctype/bootstrap.PHP):无法打开流:第66行的C:\xampp\htdocs\e-commerce\

  • 问题内容: 如果您曾经参与过Salesforce项目的部署或为SF项目设置持续集成,那么您应该知道,在部署元数据组件(类,页面等)之后,您通常还需要执行一些手动任务,例如填充自定义设置值或设置配置文件的字段级安全性。有很多这样无聊的动作。 在我当前的项目中,我再次面对它,我正在寻找如何最大程度地自动化它的方法。为了将项目部署到Org,我们使用Jenkins + Git。因此,我希望例如在每次部署后

  • 我正在建立一个多节问卷(共3),我想有4张来保存数据(一个主和一个为每个部分)。 当一个新行添加到主工作表时,如何将数据从主电子表格发送到另一个工作表,并使其成为动态的,以便它不会每次都拉同一行? 我在网上找到了这个脚本: 脚本链接 但不幸的是,它是用于在工作表之间移动数据的。它能被重塑吗? 谢谢

  • 我已通过composer安装了laravel创建项目laravel/laravel–-首选区 之后运行php artisan service命令到laravel项目目录并得到这个结果。 Laravel开发服务器启动:http://127.0.0.1:8000 但是当我去http://127.0.0.1:8000 浏览器中laravel项目未运行并给出错误信息 无法访问此站点127.0.0.1拒绝连

  • 我试图找出CDI和适合我需要的最佳方法。我有一个与普通tcp通信交互的服务()。现在这个服务有一些地方需要通知某人发生了什么事情。对于这些信息,我有接口,需要将其CDI注入到正确的实现中。另一个问题是服务本身被注入一个作业()中,该作业定期执行并调用服务来完成任务。这意味着服务将多次存在。每个都有它处理的另一个tcp连接,并且有另一个需要在接口中注入另一个驱动程序/协议的设备。 让我展示参与此场景