DevOps Environment with some extra sauce

This is a text-based development and operations environment. It is neither basic nor slim.Its purpose is to let a developer push to his work repositories or manage his work serversin under one minute since docker run.

Inside the container you start as a normal user (dev, uid 1000). This is only for your safety and to help with setup/use cases separation.You have sudo access if you need to run commands as the superuser (e.g yum install).

Provide SSH keys and settings

You may provide your $HOME/.ssh directory so that you will have your ssh keys and settings inside the container.The ssh-agent will ask you to activate your id_rsa key and any other key mentioned inside $HOME/.ssh/config.If you don't want to use the ssh-agent, press enter instead of providing your passphrase when asked.

| The reason we don't bind-mount directly to /home/dev/.ssh is that your user may have a different uid/gid from the| container's user. Bash scripts inside the container take care of this.

Auto clone/pull repositories and custom gitconfig

Create a file named repos and add your git repositories inside, one per line.Then if your file is inside /path/to/dsetup:

$ docker run -it -v /path/to/dsetup:/home/dev/.setup andmarios/devenv

Obviously if your repositories need SSH keys for access, you have to provide them as mentioned above.

You can also supply your ~/.gitconfig file as gitconfig inside /path/to/dsetup, so that git will bepreconfigured with your settings.If you don't want to copy it, you can always bind mount the original: