-
Notifications
You must be signed in to change notification settings - Fork 4
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
Rewrite the service management to leverage Docker Compose #154
Conversation
I've been using this for my day-to-day work on |
Tested with an ECP build -- I've used the containers from version |
… (updated a year ago vs 4)
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.
The first time I tried to look at this, I failed to get the containers to fetch (and I tried a bunch of things). I just tried again and it worked like a champ. I'm able to cleanly run tests 🌵 💨
Actually, I'm getting some unexpected errors while running |
Could you run |
Perhaps the |
This updates the code to leverage Docker Compose own system of dependency management and IP address resolution.
This results in a less clunky experience, more robust handling of dependencies, speed improvment and less code.
I've added
healthcheck
entries to the base containers to deleagate the complexity of managing their state to Docker Compose.Depending containers, e.g. the
wordpress
or theslic
one, can now depend on healthy services.Along with this the requirements of the PHP CLI to have the mysql extension installed is gone.
I've also leveraged the
network.aliases
configuration to make sure thewordpress
service IP is resolved at the network level, avoiding the fetching and setting of IP addresses in the PHP code.Since I have added it for debugging purposes, I've refined and added the
dc
command to run direct Docker Compose commands in the stack.Finally, I've introduced a
slic_cache_
API to cache values across the application. Right now a simple array, I'm working on a Redis based solution next (since we have theredis
service).Screencast