【发布时间】:2012-12-21 05:58:51
【问题描述】:
我是我妈妈的小企业的常驻“计算机专家”。大约一年前,我在商店的 LAN 上设置了一个备用戴尔机器作为 Ubuntu 服务器,在其上设置了一个 LAMP 堆栈,并构建了一些内部网 Web 应用程序(主要使用 PHP 和 MySQL),用于管理客户奖励等事情数据、库存、员工时间日志等。我接着实现了一个自定义的条形码和烹饪说明标签生成器,它的前端可以在 Avery 模板上打印,以及一个成熟的收银机前端,带有条形码扫描、库存的自定义挂钩管理和一套会计报告。我的小型数据库应用程序已成为商店日常程序和商业模式的一部分。
最近,我妈妈告诉我,她有一个潜在的特许经营商,她想获得这种商业模式的许可,并在另一个州开设一家姊妹店,并配备我的软件。
现在,我的代码既好用又稳定,我有大量使用它的文档,但我无法帮助新人启动和运行它。更糟糕的是,它不仅仅是一个在 docroot 中有一些文件的简单 LAMP 堆栈,设置包括使用自定义 Apache 配置文件,设置 MySQL 数据库和用户,以及安装一些深奥的依赖项,如 ImageMagick 及其 PHP Imagick 扩展(我必须从源代码编译!)
有没有什么好的方法可以制作某种一步安装脚本或包来安装我需要的依赖项、我的自定义 apache 配置以及将我的 PHP 文件全部提取到位?在没有我帮助的情况下,我可以向从未配置过 Apache 的人展示一些东西吗?甚至可以通过某种方式轻松获取整个操作系统和堆栈的映像,无需专业知识即可将其克隆到新驱动器上?
对不起,如果这是主观的,但我的谷歌让我失望了。
【问题讨论】:
-
我认为一个不错的安装脚本会处理这一切:)
-
+1 用于安装脚本...没有太多要说的了。顺便说一句,如果应用程序所依赖的所有内容都在 LAMP 文件夹中,您可以将那个大家伙放在压缩文件中并用它替换新的 LAMP 安装。对我有用,但我没有很多不同。
-
那很好,但最大的问题是标签打印的东西都依赖于 imagemagick 和 imagick,这需要一些包管理的东西和对 php.ini 等的调整。我正在尝试避免客户需要聘请专家来完成所有配置。
-
嗯,Linux 发行版中使用了两个广泛使用的包管理系列:rpm 风格和 deb 风格。两者都有记录,存在数千个示例。您可能还想看看 openSUSE 发行版提供的
Open Build System。它有助于为许多常见发行版生成和提供软件包,并且非常方便。但是,确实,您必须阅读包管理的工作原理以及如何生成包。这是值得的! -
然后还有可能运送“完整”的设备,例如一个 live-usb 记忆棒或一个虚拟机映像。即使是预配置的盒子也可以用于特许经营。
标签: php linux apache deployment lamp