Skip to content

A quick start for AWS infrastructure development in a Dockerized dev environment.

License

Notifications You must be signed in to change notification settings

samrocketman/docker-aws-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Common AWS Dev Tools Build Status

This provides a neat package for having AWS development utilities on your computer without having to install all of the heavy requirements directly.

Features:

  • Get started with developing AWS infrastructure code quickly.
  • Integrates with your shell environment to be launched from any project. (via cli alias)
  • Running VS Code IDE from inside of a docker container.
  • Fast cleanup, just delete the docker image via make clean.

Usage

Running make without arguments will give you the following usage.

The following make commands are available
    make cli   - shows a CLI.
    make gui   - shows a VS Code editor (requires X11 or XQuartz on Mac).
    make test  - runs infra tests against the aws-tools docker image.
    make clean - Removes docker image created.

Getting started

What is available?

CentOS 8 is the operating system provided with root access via sudo.

System tools:

  • Node JS - dependency for CDK
  • Python 3 - dependency for AWS CLI and cfn-init
  • VS Code - Microsoft VS Code for an IDE.
  • X11 - To run VS Code inside of the container. On Mac OS X, you need to install XQuartz for this to work.
  • dumb-init - lightweight /sbin/init process
  • git
  • goss - infrastructure test utility
  • jq - JSON parsing CLI utility
  • vim - A CLI editor. Run vimtutor to learn more.

AWS Tools Provided:

Latest version Additional Information
CDK current version AWS CDK
CLI current version AWS CLI
cfn-lint current version cfn-lint - a CloudFormation stack linter.
serverless current version serverless framework

aws-tools command alias

You can install this into your system for development as an aws-tools command. Please note, the following commands are meant to be run from the root of this repository so that it properly evaluates the path.

On Linux,

make build
echo "alias aws-tools='make -f \"$PWD\"/Makefile.alternate'" >> ~/.bashrc

On Mac OS X,

make build
echo "alias aws-tools='make -f \"$PWD\"/Makefile.alternate'" >> ~/.bash_profile

The next time you open your terminal you'll have the aws-tools command available.

aws-tools cli
aws-tools gui

Screenshot

Running VS Code from a docker container on Pop! OS 18.04 GNU/Linux.

screenshot

Troubleshooting

Q: Slowness of VS Code on Mac OS X when running make gui or aws-tools gui.

  • A: Not much I can do about that with XQuartz. There's currently an open XQuartz issue. Consider X11 support for this unstable/experimental. Using a Linux distro or a Linux VM on Mac is best.

Q: Can't connect to X session from Mac.

  • A: Go to XQuartz settings under security and enable Authenticate sessions and enable Allow connections from network clients.

MIT Licensed

About

A quick start for AWS infrastructure development in a Dockerized dev environment.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published