How to put Volto into production?
Now that the Volto app is deprecated, what is the recommended way to put a Volto into production? Should I use cookieplone to create an "empty addon"?
For the immediate term, does this help? https://training.plone.org/plone-deployment/index.html
For the long-term, we have an open issue in plone/documentation.
https://github.com/plone/documentation/issues/1647
However that issue is mostly about Classic UI, and is migrated from Plone 5.2 and updated for Plone 6. It's also mostly a wireframe and lacks useful content. We need someone with knowledge of how to deploy Plone 6 with Volto to actually write this content.
For the immediate term, does this help? https://training.plone.org/plone-deployment/index.html
@stevepiercy In my case it doesn't help much, because this guide uses plone/volto images. I can't use these images in my company. I have to use a node base image.
What I would like to know is which template to use to create a production installation of Volto.
I saw that the Volto image uses the template sub/frontend_project:
https://github.com/plone/plone-frontend/blob/137562b18f2e3e388cc3b9f8444e6e733f66ffb7/pnpm/Dockerfile.builder#L21
Would this be the way?
@wesleybl When we moved from cookiecutter-plone-starter to cookieplone and changed the structure, our overall strategy was to put as much as possible into the add-ons. There is still an app but it becomes all boilerplate, mostly just a package.json which depends on Volto and defines some scripts. The sub/frontend_project template in cookieplone-templates creates this boilerplate.
The plone-frontend image is built on Node base images, so you can probably use it as a starting point. https://github.com/plone/plone-frontend/blob/137562b18f2e3e388cc3b9f8444e6e733f66ffb7/pnpm/Dockerfile is the final image, which is a multi-stage build that copies from https://github.com/plone/plone-frontend/blob/137562b18f2e3e388cc3b9f8444e6e733f66ffb7/pnpm/Dockerfile.builder and https://github.com/plone/plone-frontend/blob/137562b18f2e3e388cc3b9f8444e6e733f66ffb7/pnpm/Dockerfile.prod
@davisagli unfortunately, in my company I can't send an image to production. I have to compile my project and send only my project folder. It will be inserted into a pre-existing image. So I can't use the Volto image as a base. I could even use the Volto image to compile the project. But that would make things a little more complicated in my workflow. So I prefer to use my company's image, it's similar to the production image.
What I was wondering is just which template I should use. And from what I understand, I should use the sub/frontend_project template.
@stevepiercy , that solves my issue here and from my point of view this issue can be closed. Do you want to keep it open to improve the documentation?
@wesleybl let's leave this issue open, to give it more exposure for its related issue in plone/documentation. I reckon there are more Volto developers looking in plone/volto for such issues than in plone/documentation.