jare/drop-in:latest
Alpine Linux
Vim
+ a ton of awesome plugins seejare/vim-bundle:latest
- Good support of
Golang
andTypeScript
development withjare/typescript
andjare/go-tools
containers tmux
Fish
powerline
Mosh
- Docker client for doing stuff with
-v /var/run/docker.sock:/var/run/docker.sock
- OpenSSH, Bash, OMF, Python, etc.
The Tmux prefix is C-q
other than that both Tmux and Vim binding are mostly default tmux.conf, .vimrc
docker create -v '/usr/lib/go' --name go-tools \
'jare/go-tools' '/bin/true'
docker create -v '/usr/lib/node_modules' \
--name typescript 'jare/typescript' '/bin/true'
docker run -v $('pwd'):/home/developer/workspace \
--volumes-from go-tools --volumes-from typescript \
-v /etc/localtime:/etc/localtime:ro \
-v /var/run/docker.sock:/var/run/docker.sock \
-d -p 80:80 -p 8080:8080 -p 62222:62222 -p 60001:60001/udp \
--name drop-in jare/drop-in
-v /etc/localtime:/etc/localtime:ro
- makes tmux display local time
mosh --ssh="ssh -p 62222" -- root@$<ip>
Then you can start main
tmuxp session like this tmuxp load .main.yaml
- tmuxp examples
#!/bin/bash
ip=$(docker inspect --format '{{ .NetworkSettings.IPAddress }}' drop-in)
mosh --ssh="ssh -p 62222" -- root@$ip
#!/bin/bash
dtc_id=$(docker ps -a -q --filter 'name=vim-go-tools')
ts_id=$(docker ps -a -q --filter 'name=vim-typescript')
if [[ -z "${dtc_id}" ]]; then
echo 'vim-go-tools container not found. Creating...'
docker create -v '/usr/lib/go' --name 'vim-go-tools' \
'jare/go-tools' '/bin/true'
echo 'Done!'
fi
if [[ -z "${ts_id}" ]]; then
echo 'vim-typescript container not found. Creating...'
docker create -v '/usr/lib/node_modules' \
--name 'vim-typescript' 'jare/typescript' '/bin/true'
echo 'Done!'
fi
echo 'starting daemon...'
docker run -v $('pwd'):/home/developer/workspace \
--volumes-from vim-go-tools --volumes-from vim-typescript \
-v /etc/localtime:/etc/localtime:ro \
-v /var/run/docker.sock:/var/run/docker.sock \
-e "GEMAIL=<github email>" \
-e "GNAME=<github name>" \
-v <id_rsa for github>:/home/developer/.ssh/id_rsa:ro \
-d -p 80:80 -p 8080:8080 -p 62222:62222 -p 60001:60001/udp \
--name drop-in jare/drop-in
echo 'Done!'
- If Vim or Powerline doesn't look right in the tmux try
tmux -2
and make sure that client'sTERM
variable set to support 256 colors - Don't forget to replace
ADD https://github.com/jaremko.keys /home/developer/.ssh/authorized_keys
in the Dockerfile with your key or mount it-v <your-key>:/home/developer/.ssh/authorized_keys
Leave a comment if you found a bug or if you have a suggestion!