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

Create a cloud dev env (gitpod, devcontainer, firecracker vm etc) for MageOS that allows one to get started with Magento in minutes (not days). #12

Open
damienwebdev opened this issue Nov 5, 2022 · 1 comment

Comments

@damienwebdev
Copy link
Member

No description provided.

@adamzero1
Copy link
Contributor

Current thoughts

Create a repo something like "contribution-development-environment" this would allow us to specify an environment (and improvements to the environment) without forcing updates to the application repo. Which just feels wrong.
For example: if we wanted to include kibana in the environment, it wouldn't feel right putting that in the main repo. (just my opinion though)

By having a separate repo, we could also version it inline with the application. i.e contribution-development-environment:2.4.2 which would work with that specific environment.

Current Progress

  • have created a fork of docker-magento here which already has a lot of what we need.
  • have modified the fork in a few way to ease setup / reduce complexity / speed the process up.

Ultimatley it currently takes ~10mins for the environment to start up, but this may be reduced with pre-caching (haven't had chance to look into propperly yet)

Demo Video

TODO

  • document the actual process in the main repo
  • document the environment (how to run bin/magento etc...)
  • remove scripts that aren't used
  • try to use public/standard images for services where possible (instead of custom images)
  • fix permission issues (this may be resolved by moving away from the custom docker images) and then remove all the permission fix commands in the gitpod.yml
  • point this to official Mage OS contribution repo
  • point this to a tag or branch i.e 2.4
  • change php-fpm to use port and not shared socket

Future Improvements

  • Use a prebuilt database with sample data already installed. There a few things that need to be decided for this though:
    • by using a pre-set database it may cause really nuanced issues if the install process changes
    • we would need to maintain a version of the db per magento release
    • the setup scripts would need altering to update the db urls (instead of supplying them during install/setup)
  • Pre-install all sample data (including images) again needs some additional thought scoping out.
  • Kibana
  • Redis Command
  • MySQL UI
  • PHP MyAdmin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

2 participants