Common environment scripts that I use for development.
My dev workflow is heavily container based. I tend to avoid installing anything on my host machine that the application I'm working on is reliant on. This includes build/debugging tools for compiled languages and interpreters for interpreted languages.
I heavily rely on VSCode devcontainers to make this workflow seamless. Although the final application images I deploy may sometimes rely on a different base image (say, Alpine), I still find it useful to be able to do development in a reproducible containerized environment.
This repo doesn't work without the following binaries installed on the host machine:
Shell and shell tools that I use for my host machine and devcontainer:
Tools that I use on the host machine:
To install the common ~/.zshrc
to the shell, clone this repo and then:
$ install-zshrc
This will create a symbolic link in ~/.zshrc
to wherever the .zshrc
script is in the repo.
Make sure to export your DOCKERHUB_ACCESS_TOKEN
somehow. An easy way to accomplish this:
$ echo "export DOCKERHUB_ACCESS_TOKEN=THE_ACCESS_TOKEN_HERE" >> ~/.envrc
$ direnv allow
There is an example docker-compose.yml
and devcontainer.json
file in devcontainer
to help you quickly spin up a devcontainer environment in a new application.