0

I've created a simple web application, a self-contained tool with a user system. I host it publicly for everyone to use, but I've gotten some requests to allow companies to host the entire application privately on their internal systems.

I have no idea what I'm doing - I have no experience with deployment or server stuff. I'm just some person who learned enough JS and PHP to make a tool for my own needs. The application runs with Apache, MySQL, and PHP.

What's the best way to package my application to let others run it privately? I'm assuming there's better options than just sending them all the source code. I'd like to find a solution that is:

  • Does not require support to set up (I'm just a single developer without much free time)
  • Easy to configure
  • Easy to update

Does there exist some one-size-fits all thing that I can give to someone, they can install it, and bam, now when they go to http://myapplication/ on their intranet, it works?

Thanks for your help.

lifeformed
  • 103
  • 2

1 Answers1

0

Your users are very likely to have different hosting environments as well as different requirements for running your application. So I don't think that there is a one size fits all solution to your problem.

Traditional way to ship PHP applications is to provide a source code package with an optional setup script for initial configuration stage. In this case you assume that your user already has a working hosting environment and you only provide setup utility and documentation for the application itself. You can have a script to validate hosting environment before proceeding with further steps.

A different approach would be to provide whole hosting environment together with your application. Two possible ways to achieve that could be to provide a virtual machine image or a Docker container. The basic idea here is to provide all the dependencies together with your application.

Have a look at http://www.docker.com. I never used it myself so I can't give you exact details, but it may be a suitable solution.

grekasius
  • 2,046
  • 11
  • 15