
Ask HN: How to deploy to on-premise enterprises? - tixocloud
Hi HN-ers,<p>Hopefully some of you folks with enterprise experience will be able to help me.<p>I&#x27;m exploring how we can deploy our software on-premises to enterprises and see that deploying a virtual appliance is a common way. Are there any other better ways of doing this (i.e. Docker image)? What are some other things I need to think about?<p>How will I manage to keep the software updated with the latest features for a client while maintaining consistency across the code base?<p>Thanks in advance.
======
grantlmiller
Check out the guide I wrote about your options for this:
[https://www.enterpriseready.io/features/deployment-
options/](https://www.enterpriseready.io/features/deployment-options/)

Docker/Swarm/Kubernetes is definitely becoming the standard for modern on-prem
deployments. You keep the software in sync by delivering new versions of the
manifest regularly (you can even have these automatically applied w/ zero-
downtime if you're doing automation correctly).

~~~
tixocloud
Thanks very much. I'll have a read.

------
vivan
In my experience, on-prem installations have to be manually upgraded by
someone at the company. I haven't come across many auto-updating appliances.
As a result you will likely end up having to keep supporting even very old
versions of the software which can become a nightmare. You can of course tell
clients that you won't support anything but the latest few versions to force
them to upgrade.

------
ToFab123
An enterprise would have a process for you to follow. It will most likely
mandate that for each change / deployment you will have to submit an Request
For Change (RFC) explaining the purpose of the deployment, backup procedure,
roll back procedure. The will have a form you to fill out.

It will, with almost certainly, not be you that performs the installation /
deployment. It will be someone else and he will use the instructions you
provide in the RFC

<How will I manage to keep the software updated with the latest features

You will not or rather, every time you want to update it you must submit a new
RFC. Enterprises are not interested in "the latest" features. The are
interested in stability. So a stable product might never be updated unless
there is a compelling business case for why it should be updated.

You will (most likely) not get access to the servers or infrastructure and you
can not just log onto some server and upgrade / change something. Everything
you do will have to be tested and approved in multiple environment (test and
preproduction) before it hits production

~~~
tixocloud
Thanks - I'm assuming that every enterprise could potentially have their own
process/infrastructure of which we'll have to decide how we can fulfill?

Is it common to say we can serve enterprises and then after contract
negotiations, build the deployment specifically for the client?

I've seen virtual appliances, physical appliances, zipped files, etc. but not
sure what's the most common or easiest method. Seems like there isn't an
easiest/standard method and it differs client by client.

~~~
ToFab123
Yes, all have different processes, but they all speak the same language. You
should take a 1 - 2 days course in ITIL, so you use the same terms as they do.
[https://en.wikipedia.org/wiki/ITIL](https://en.wikipedia.org/wiki/ITIL)

