-
-
Notifications
You must be signed in to change notification settings - Fork 37
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
Feat: add new docker for production & development environment #31
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't use Docker myself, but I know a lot of people do, so it's great if this is updated thoroughly. :-)
Some questions about the first things I noticed, but you might still be working on this:
- I see you've removed a few files (
.gitignore
's,.env.dist
). Is this on purpose? - We're keeping our version of PHP in sync with Symfony. So, we'll need to make sure the
7.4
insymfony.lock
won't break that requirement.
I'm glad you welcome this work like this. I still have some work to do but you can already test it with a simple If you have more proposals, I am interested ;) |
Little question, do you know why we had a "node" container in the docker? Great news, I think I finished it all this week. Don't hesitate to test and give feedback ;) |
No, i'm afraid I don't.. I don't really use Docker myself. Perhaps @JarJak (🛎️) knows? |
@bobdenotter I still have the documentation to finish, I hope to deliver it to you this week for the review 😄 |
@toofff Excellent! Looking forward to it! |
@bobdenotter Now I pass the torch to you for proofreading and testing locally. I remain at your disposal for any questions and changes to be made. :) |
@toofff Thanks! It'll take me a little while to review, because I'd like to do it with care. Will let you know if any questions arise. |
I don't know if you still have this question, but I think the node container is to build/process the javascript for the (vue based) editor support in /bolt |
Thanks @simongroenewolt I'm watching this this week. |
For me the container node is not necessary here. From what I could understand, this container is only needed for "bolt/assets" development. So not necessary for end developers who will develop websites with "bolt/project" |
@bobdenotter did you have time to test with and without docker? |
@toofff Is this 'good to go' for now? If so, we'll merge it in shortly, and we fine-tune it before release of a new version of this repo. |
I try to finalize tomorrow and do my rebase so that it is mergeable |
@bobdenotter It's good for me, I made the last corrections of the CI, the rebase of the master branch, the update of composer 2. You can test by following the If you want to view the CI, it is available on my fork |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This has my blessing
- Add CI with github action for Composer 2 & Docker Compose installation - Upgrade project with Composer 2 - Rework the docker services for devlopment environment (php, nginx, db, h2-proxy & mailcatcher) - Replace .env.dist by .env - Add the .editorconfig file - Add the .dockerignore file - Rework the .gitignore file - Rework the Makefile file - Rework the README.md file - Fix API Platform usage - Upgrade dependencies of project - Fix the project configuration after launch composer sync-recipes - Add in require dev & fix configuration (to get closer to symfony requirements) for Easy Coding Standard - Add in require dev & fix configuration for PHPStan
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As previously discussed: Let's roll with this, and iron out kinks as we go!
🚂 🚋 🚋
docker-compose.yml
&Dockerfile
layer divisionsphp
& configuration (env PROD & DEV)public/files
,public/theme
,public/thumbs
,var/cache
,var/log
&var/sessions
)php bin/console bolt:info
instead of launching after installing vendors (because it is looking for the version of the database which might not be launched in time)nginx
& configuration (env PROD & DEV)db
with MySQL 5.7 version (only env DEV)h2-proxy
to have SSL (only env DEV)mailcatcher
to do (only env DEV).dockerignore
file.editorconfig
file.env.dist
by.env
file, to respect symfony's good practice.gitignore
fileMakefile
fileREADME.md
filecomposer.json
file & update dependenciesbolt/core
4.0.1bolt/themes
3.3.2symfony.lock
file%kernel.project_dir%/src/Entity
for the use of our own entity)I added a CI for the installation of a Bolt project with Composer or Docker Compose.
The continuous integration is not yet working on this pull request because nothing is merged into the Bolt repository yet in my opinion. On the other hand you can see it working on my pull request in my fork