Having recently learned and used a lot of Docker I'm wondering what else everyone uses here. Ease of reproducibility is awesome.
What DevOps tools get you excited?
Ever since starting using CircleCI I have never looked back. You simply create a configuration file in your repository, hook it up to Circle and then you're good to go.
In my projects I use it to deploy to AWS, but since it's so easy to set up and configure I think it should work with any tech stack. Their free tier has been a little tight in periods of intense development but overall has been sufficient for me in my side projects.
I use CircleCI too, I like the technical implementation and docs. there are a lot of examples and open source projects that use it too (to check other configs).
The UI is pretty annoying, to be honest and I don't like their pricing for solo developer (starts at 30€). I much prefer the CodeBuild pay as you go model. CircleCI also hides parallel build in the paid tier.
Overall CircleCI was still my favorite solution. I didn't use GitLab CI because I switched back to GitHub. I didn't use GitHub actions because I wanted a more mature solution and AWS CodeBuild/Pipeline is very lacking in terms of features and integrations.
Hey,
For larger projects, I use AWS CDK (Cloud Development Kit) for Infrastructure as Code and CodeBuild/Pipeline for CI.
For static sites, I use AWS Amplify or Netlify. Probably going to be moving everything to AWS just for simplicity.
AWS was painful to understand before I started using Amplify
Have used Docker for years now, it is pretty neat :)
Heroku is quite cool as well, makes launching an MVP a breeze.
And I also looooove Terraform (for my AWS projects/infrastructure). Infrastructure as Code is so cool and it really helps you spinning up new infrastructure in no time.
what about Ansible, do you have any experience with it?
No, I never had the need to work with it. We used packer to build immutable AMIs for our EC2 instances and then run Docker-swarm on those.
We use Jenkins & Ansible.
I'm pretty heavy in the .NET ecosystem, but I use Azure DevOps for everything (it's free).
It manages build & release pipelines as well as allows you to organize work similar to JIRA or Rally. It also gives you unlimited private code repos.
It enjoy having a single place to go for managing everything. I am a sucker for simplicity.
I’ve used docker, docker-compose, ansible, terraform and various CI/CD. All of them are great but when I have all of them in a single project I quickly find myself looking for a full time devops person to maintain that stuff.
My rule of thumb - if you can live without devops, do whatever it takes to live without them. Most small projects I came across never needed even docker.
I get excited about the tools that save me time. The last one I discovered recently was https://vercel.com/ (former Zeit). Their "Develop. Preview. Ship" cycle is amazing.
If you like Docker, you're going to love docker-compose. And the next step is Kubernetes.
For DevOps I've used:
Heroku (php)
For little side projects, Heroku. I know it looks expensive, but they are so far ahead that it's not even funny. Every time I try to work without it, unless I have a dedicated devops person, I regret it.
I like using Heroku's CI/CD and pipelines. In the past I have used CircleCI. I haven't run frontend tests in Heroku yet, I don't know how that'll behave.
For exception tracking I like Sentry.
Heroku tends to be OK for Ruby and Python. If you do Java, it needs so much ram your starting cost is $250 per month.
Docker for local development
Eslint for linting
Jest for testing
Webpack for web app builds
GitLab runners for CI/CD
This comment was deleted 6 years ago
Im curious as to why you host your own Heroku. Is it cost thing ? Ive always thought the whole idea of heroku was keep things simple.
This comment was deleted 6 years ago
Haven't heard of them, thanks. I've used https://caprover.com/ which is similar