Theoretically you should be able to build producti...
# docker
s
Theoretically you should be able to build production like images with containers containing your sources with docker/sdk - however that didn't lead to a satisfying result for us.
πŸ‘ 1
w
Hello. Actually there is a good reason to stick to the "Spryker-way" doing the infrastructure topics. But if the ci/cd stuff is not achievable with it the optimal way, what stack do use exactly? ps. I see, gitlab ci. So, to sum up, You use spryker docker sdk for local dev and gitlab ci for deployment tasks, right?
s
We use our own Docker containers for the Spryker shops (and running tests) but a docker/sdk oriented Kubernetes deployment triggered via GitLab CI, yes. So we are using all the parts that are in docker/sdk, just not via docker/sdk and in some details specialized to our use cas.e
πŸ‘ 1
p
Hi guys, Yes, at the moment, our docker/sdk supports local development and preparing production images/assets. CI/CD support is planned, but it’s too early to share more details.
I would love to hear more about your setups and how you work at the moment.
f
Same setup as Thomas here. Custom docker containers based on Ubuntu 18.04 (20.04 in testing). Custom dev environment with docker compose. CI/Staging/Production/Review APPs also with custom scripts on Gitlab CI with Google Kubernetes Engine. Custom, cause we startet with Spryker on Docker 3 years ago and since it all works no urgent reason to migrate to SDK.
πŸ‘ 2
w
@plain-barista-64036 As to me, Im just at preparing setting up dev and ci infrastructure, so, basically "standing on the crossroads". The constraints I have are, I should stick to bitbucket ci instead of gitlab ci. So the thought is to use Spy Docker SDK for local setups and Bitbucket ci + Kubernetes for deployments.
πŸ‘ 1
@plain-barista-64036 "_CI/CD support is planned, but it’s too early to share more details._" -- Could you provide some informations about the approx. terms so far? Or it is too early for such statements yet?
p
Alexey, it is really to early. I will share any information as soon as possible πŸ™‚
πŸ‘ 1
s
I think one major thing here is that Docker/SDK can only cover a quarter of the story to a successful CI/CD chain and therefore to a successful deployment. Building the containers for Spryker isn't very hard and your containers already serve as a good base. What is really challenging is the project / customer specific scenarios that one faces and the requirement to "make it scale" and easy to fan out. This is highly custom so I don't think there can be such thing as a general solution. Marc and I are using Kubernetes but the way we do will probably be very different and very specific to our needs - which is a good thing.
On the other hand, Spryker could improve the post-deployment story. Jumping into a container and running console commands is not really ideal. We have our workarounds and solutions for those scenarios but a well defined "post-rollout" tool would be greatly appreciated.
w
@sparse-fall-78248 I see. Still, don't you think it would make sence to provide some kind of "sample solution" for deployment scenarios, basing on, say b2c demoshop?
s
Yeah sure, but that's an entirely different story IMO. Both a general Ansible/Chef/... and maybe Kubernetes deployment example for B2C (DE/AT/US) would probably be a good idea (incl. documentation about stop-gaps and high availability / scaling scenarios)
πŸ‘ 1
s
Are there news on the CI/CD capabilities for docker/sdk @plain-barista-64036?
p
Hi Sebastian, At the moment, we are finalizing a large amount of docker-sdk improvements and are going to release them soon. Some of these features aimed to improve CI/CD processes. I will announce here when it is released. Meanwhile, if you have a specific case or feature you would like to improve or being implemented, please, let us know :) Thank you. Dmytro
s
Thank you @plain-barista-64036. I will wait for the release and see what we get there πŸ˜„