Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running Docker with Production Workloads #1003

Open
Silic0nS0ldier opened this issue Jun 29, 2019 · 1 comment
Open

Running Docker with Production Workloads #1003

Silic0nS0ldier opened this issue Jun 29, 2019 · 1 comment
Labels
core feature request Feature request Docker needs discussion A decision needs to be taken by the dev team
Milestone

Comments

@Silic0nS0ldier
Copy link
Member

While UserFrosting includes a Docker Compose configuration suitable for local development purposes, it currently has no such offering for production in-box.

There are a number of aspects that will need to be considered here, and plenty of discussion to be had. Known considerations are;

  • The database
    • The development configuration exposes the databases port to the host machine to permit access. This is not advisable for a production grade configuration. Furthermore, how Docker exposes ports means that they can bypass common firewalls like ufw (apparently).
    • How database credentials should be made available to UserFrosting.
    • Potentially using a database not managed by Docker (e.g. a managed database service, or a separate dedicated server)
  • HTTPS
    • The development configuration does not support this, but ideally should as certain features are gated behind HTTPS by browsers.
  • File permissions
  • Testing
    • At the time of writing there is no automated testing for a UserFrosting deployment, just the APIs and HTTP API endpoints. Adding another official method to host a site for production without this would be a bad idea as it would increase the manual test surface drastically.
  • Infrastructure shape
    • One of the big advantages of Docker is the capacity to easily and reliably scale. Scaling is much more effective (quicker and generally easier) when the individual services are kept simple and focused, however this doesn't necessarily transfer well to UserFrosting which is built with traditional stacks in mind.
@phillmac
Copy link
Contributor

phillmac commented Mar 5, 2021

Hit me up if you want to discuss anything, I have been running UF + docker in production for ~2 years. certbot + nginx as a reverse proxy for ssl for e.g.

@lcharette lcharette added this to the 5.1.0 milestone Nov 25, 2023
@lcharette lcharette modified the milestones: 5.1.0, 5.2.0 Feb 17, 2024
@lcharette lcharette modified the milestones: 5.2.0, 5.3.0 Apr 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core feature request Feature request Docker needs discussion A decision needs to be taken by the dev team
Projects
Status: Not Started
Development

No branches or pull requests

3 participants