Maintain your local AWS environment with Commandeer
In my previous blog about Running AWS locally with LocalStack I’ve shown you how to use Localstack, a tool to mock your AWS environment on your local machine. When working with Localstack, I always had to prepare the environment for my application to run. Most of the time this could be done automatically via scripts, but some preparations, for instance editing some data in a S3 bucket, could become a little tricky.
This is where Commandeer comes in handy to help you maintain your local environment.
Commandeer is what they call themselves "an IDE for the Cloud". They offer a nice UI to maintain your dockers, AWS-, LocalStack- and Serverless- environments. It is still in beta and will be released May 1st, 2020, there is a free version which can control a limited set of resources. The application itself has not been released officially yet and nice features are still being added as time goes on. In my use-case I only use Commandeer to maintain my LocalStack instance. For AWS their own web interface will suffice for me.
Using Commandeer with LocalStack
Since LocalStack is a local mock for your AWS environment you just need to select the
local account and Commandeer will be able to communicate with LocalStack.
After you’ve connected to LocalStack in Commandeer you should find LocalStack under the section
Once you navigate there you can see which services LocalStack is running, with the exposed ports.
If you check on the AWS section you’ll quickly notice that some of the most used AWS services are there.
For example for DynamoDB there is a dashboard in where you can check which tables are present. Clicking on one of your existing tables allows you to modify the table and its contents.
Commandeer with AWS
Commandeer can also be used with AWS. The only change is that you need to provide the access keys of your AWS account to be able to connect your AWS environment. There is one downside though, Commandeer does not use your local AWS CLI configuration which is considered a best practice for leveraging upon the AWS SDK’s. Another downside is one a colleague of mine mentioned and that is Commandeer doesn’t support the assume role feature.
Then again Commandeer currently has not released a 1.0 version yet and the previous mentioned items are already on their backlog, so hopefully it will be available in the future :D
Commandeer seems really interesting especially in combination with LocalStack. The UI makes it easier to see what’s happening inside of your LocalStack docker. There is a nice free version, but the paid version will have more support and seem better suited for use with AWS regarding security. Not all desired services are yet supported and for AWS it still needs some assume/config features to be really useful for production use, but it shows promise.
Their github repo: https://github.com/commandeer/open