blob: 00b70858504df9ec576bf4c5364681331d4f1f5a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#!/bin/bash
X11_MANDATORY=0
if [ -z "$DISPLAY" ]; then
echo "\$DISPLAY is not set"
DISPLAYS=( $(netstat -lnt | awk '/127.0.0.1:60/ { split($4,a,":"); print "localhost:" substr(a[2],3) ".0" }') )
if [ "${#DISPLAYS[@]}" = 0 ]; then
echo "No X11 ports available"
if [ $X11_MANDATORY = 1 ]; then
exit 1
fi
fi
if [ "${#DISPLAYS[@]}" -gt 1 ]; then
echo "More than 1 X11 port available. Which one do you want?"
for i in "${DISPLAYS[@]}"; do
echo "export DISPLAY=\"$i\""
done
exit 1
else
export DISPLAY="${DISPLAYS[0]}"
fi
fi
docker run -ti --rm --net=host \
-e TERM \
-e DISPLAY \
-e XAUTHORITY=$HOME/.Xauthority \
-v $HOME/.Xauthority:$HOME/.Xauthority:ro \
-v /usr/share/zoneinfo/America/Los_Angeles:/etc/localtime:ro \
-v $HOME/bin:$HOME/bin \
-v $HOME/.vim:$HOME/.vim \
-v $HOME/.vimrc:$HOME/.vimrc \
-v $HOME/amazon-bin:$HOME/amazon-bin:ro \
-v $HOME/.mutt:$HOME/.mutt \
-v $HOME/share:$HOME/share \
-v $HOME/.exchange.pass:$HOME/.exchange.pass \
mutt
|