部署到生产环境的正确方法

     2023-03-04     26

关键词:

【中文标题】部署到生产环境的正确方法【英文标题】:Right way to make deploy to production 【发布时间】:2019-04-15 15:56:55 【问题描述】:

Symfony documentation 表示将 /public/build 文件夹保留在 .gitignore 中

所以当我推送我的文件时,生产中没有构建文件夹,所以我需要构建资产。

但文档还说资产需要在开发服务器上构建。

所以,我需要您就正确的部署方式提出建议。

1) 用 git 推送构建文件夹?

2) 在生产环境中安装yarn、nodeJs 并在git pull 之后部署?

谢谢。

【问题讨论】:

【参考方案1】:

第二个。第一个对我来说总是很奇怪,我通常不想将构建文件推送到 git,就像我不推送我的供应商目录一样。

除了奇怪之外,你还有用于 encore 的 dev 和 prod 配置,所以你必须注意 olny push prod 编译。 (例如:源地图)

另一个问题是资产版本控制 (https://symfony.com/doc/current/frontend/encore/versioning.html)。由于文件名正在更改,您将在更改日志中生成不必要的元素。如果您与团队合作,这也可能会产生 git 冲突。

【讨论】:

【参考方案2】:

有 3 种方法可以做到这一点。 (Symfony 推荐这些。)

1-) 你应该有一个构建服务器。此外,您可以使用 scp 或工具发送构建的文件,这些工具有助于移动文件。 (适用于大型复杂项目。)

2-) 您可以在您的开发机器上构建生产环境,并且您应该移动构建的文件。

3-) 你可以在生产机器上安装 npm 或 yarn。但就个人而言,这是不必要的。这个选项是最后推荐的。

目前,我更喜欢第二种选择。你应该看这个视频:)

https://symfonycasts.com/screencast/webpack-encore/production-build

【讨论】:

【参考方案3】:

我将在本地构建文件并由 Ansible 部署。 谢谢大家。

【讨论】:

如何先使用实体​​框架代码部署到生产环境

】如何先使用实体​​框架代码部署到生产环境【英文标题】:Howtodeploytoproductionwithentityframeworkcodefirst【发布时间】:2013-07-0407:20:00【问题描述】:我从asp.netWebForms转向MVC和实体框架代码优先方法。我有个问题。如何设置我的环... 查看详情

一种简单的生产环境部署node.js程序方法

最近在部署Node.js程序时,写了段简单的脚本,发觉还挺简单的,忍不住想与大家分享。配置文件首先,本地测试环境和生产环境的数据库连接这些配置信息是不一样的,需要将其分开为两个文件存储到config目录下,比如:开发... 查看详情

如何在 zoho crm 中将沙盒编辑代码部署到生产环境

】如何在zohocrm中将沙盒编辑代码部署到生产环境【英文标题】:Howtodeploysandboxeditedcodetoproductioninzohocrm【发布时间】:2021-10-2103:20:13【问题描述】:**嗨,我在zoho沙盒中创建了函数并部署到生产环境中。过了一天,我得到了新的... 查看详情

将相同的应用程序/代码部署到 Elastic Beanstalk 服务器和工作程序环境的正确方法是啥?

】将相同的应用程序/代码部署到ElasticBeanstalk服务器和工作程序环境的正确方法是啥?【英文标题】:Whatistheproperwaytodeploythesameapplication/codetoElasticBeanstalkserverandworkerenvironments?将相同的应用程序/代码部署到ElasticBeanstalk服务器和工... 查看详情

部署生产环境时踩到的一些坑

...个特定的URL请求转发到一个带有页面的Web后台管理系统。部署完成之后发现该后管系统无法正常登陆,输入正确账号密码后报错密码错误,后台错误日志为:java.lang.IllegalStateException:Cannotcreateasessionaftertheresponsehasbeenco 查看详情

软件项目部署环境

...产环境的过度环境。测试环境的分支一般是develop分支,部署到公司私有的服务器或者局域网服务器上,主要用于测试是否存在bug,一般会不让用户和其他人看到,并且测试环境会尽量与生产环境相似。生产环境:生产环境是指... 查看详情

如何从本地 VirtualBox / Vagrant 开发环境部署到生产环境?

】如何从本地VirtualBox/Vagrant开发环境部署到生产环境?【英文标题】:HowisdeploymenttoProductiondonefromlocalVirtualBox/Vagrantdevelopmentenvironment?【发布时间】:2014-08-0218:04:51【问题描述】:最近我开始阅读有关使用虚拟化软件构建开发环境... 查看详情

部署到生产:为啥 CloudKit 删除订阅类型?

】部署到生产:为啥CloudKit删除订阅类型?【英文标题】:DeploytoProduction:WhyisCloudKitdeletingSubscriptionTypes?部署到生产:为什么CloudKit删除订阅类型?【发布时间】:2021-02-2600:26:06【问题描述】:我正在将更改从开发环境部署到生产... 查看详情

将 Play 代码从 git 存储库部署到生产环境的最佳实践是啥?

】将Play代码从git存储库部署到生产环境的最佳实践是啥?【英文标题】:WhatarebestpracticesregardingthedeploymentofPlaycodefromagitrepotoproduction?将Play代码从git存储库部署到生产环境的最佳实践是什么?【发布时间】:2017-02-2613:36:12【问题... 查看详情

在 SQL Server 2005 中将不安全的程序集部署到生产环境

】在SQLServer2005中将不安全的程序集部署到生产环境【英文标题】:DeployunsafeassemblytoproductioninSQLServer2005【发布时间】:2009-09-2909:23:19【问题描述】:我需要将不安全的UDF程序集部署到SQLServer2005。我正在使用C#和VisualStudio2008。我... 查看详情

部署到 Heroku 时如何在我的生产环境中拥有一个 mysql 数据库

】部署到Heroku时如何在我的生产环境中拥有一个mysql数据库【英文标题】:HowtohaveamysqldatabaseinmyproductionenvironmentwhendeployedtoHeroku【发布时间】:2021-09-1716:16:21【问题描述】:我有一个已部署到heroku的Rails应用程序,但我不知道如何... 查看详情

将闪电页面从沙盒部署到生产环境

】将闪电页面从沙盒部署到生产环境【英文标题】:Deployalightningpagefromsandboxtoproduction【发布时间】:2018-09-0806:10:49【问题描述】:我们正在开发已安装受管软件包的沙盒组织。此受管软件包有一个自定义对象。我必须在对象的Li... 查看详情

flask部署和分发

...同时,由于开发过程中,应用变化频繁,手动将每次改动部署到生产环境上很是繁琐,最好有一个自动化的工具来简化持续集成的工作。本篇,我们就会介绍如何将上一篇中Flask的应用程序自动打包,分发,并部署到像Apache,Ng 查看详情

如何部署到 Apollo Graphql 服务器和客户端到生产环境?

】如何部署到ApolloGraphql服务器和客户端到生产环境?【英文标题】:HowtodeploytoApolloGraphqlsererandclienttoproduction?【发布时间】:2020-10-2803:02:59【问题描述】:我正在尝试将示例项目部署到Heroku。我尝试的一切都会导致404。这是我的... 查看详情

jenkins实现生产环境部署文件的回滚操作

由于dotnet项目的生产环境环境部署工具比较少,所以我使用jenkins作为生产环境的自动化部署工具。既然有回滚操作,那么就会有部署操作;要实现回滚,先要实现部署的操作,我在jenkins搭建了一键从测试环境发布到正式环境的... 查看详情

springcloud从入门到进阶——生产环境下eureka的完全分布式部署

...的内容我们知道,开启了preferIpAddress后,Eureka的伪分布式部署会提示replica不可用。这一节我们讲解如何在生产环境下部署完全分布式的Eureka集群,确保开启了preferIpAddress后replica的可用性。版本  IDE:IDEA2017.2.2x64  JDK:1.8.0_1... 查看详情

rabbitmq生产部署指南

像RabbitMQ这样的数据服务通常有许多可调参数。一些配置对开发有很大的意义,但并不适合生产,本指南旨在为此提供帮助 虚拟主机例如,在单租户环境中,当您的RabbitMQ集群专门为生产中的单个系统供电时,使用默认的虚... 查看详情

批量部署stgpoll到生产脚本

...升级,需求将stg(stg环境:近似1:1的生产环境)的war包全量部署到online,先刷sql后部署war包,差不多10分钟部署完成。脚本存放于跳板机上,跳板机和stg/online做了秘钥登录:env.sh的内容就是war和ip对应的列表如下:env.sh文件:#10.10.1... 查看详情