forked from spencertipping/docker
/
Dockerfile.gentoo
48 lines (40 loc) · 1.62 KB
/
Dockerfile.gentoo
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
41
42
43
44
45
46
47
48
FROM gentoo-local
RUN emerge --sync
ENV packages tmux htop atop dev-vcs/git openssh sudo \
octave ruby dev-lang/python dev-python/ipython perl jq \
pv units net-misc/curl \
lzop zip unzip app-arch/lz4 app-arch/zpaq app-arch/lrzip \
dev-python/pip scipy \
vim \
app-emulation/docker \
sshfs encfs archivemount nfs-utils \
ffmpeg chromium darktable xorg-server audacity
RUN echo 'CONFIG_PROTECT="-*"' >> /etc/portage/make.conf \
&& sed -ri '/^CPU_FLAGS_X86=/ {s/"$/ mmxext sse3"/}' /etc/portage/make.conf \
&& sed -ri '/^USE=/ {s/"$/ X"/}' /etc/portage/make.conf \
&& sh -c 'emerge --autounmask y \
--ask n \
--autounmask-write y $packages; \
emerge $packages'
RUN sh -c 'emerge --autounmask-write xpra x11-misc/xvfb-run; \
emerge xpra x11-misc/xvfb-run'
ENV user=spencertipping
RUN echo user_allow_other >> /etc/fuse.conf \
&& echo '10.35.0.3 reykjavik' >> /etc/hosts \
&& useradd -ms /bin/bash $user -G adm,docker \
&& echo " IdentityFile ~/.ssh/id_rsa" >> /etc/ssh/ssh_config \
&& echo "%adm ALL=NOPASSWD: ALL" >> /etc/sudoers \
&& mkdir /var/run/sshd \
&& /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N "" \
&& /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ""
ADD authorized_keys user-setup repositories git-versions /home/$user/
RUN chown $user:$user /home/$user/authorized_keys \
&& chmod 0700 /home/$user/authorized_keys
USER $user
WORKDIR /home/$user
RUN ./user-setup
EXPOSE 22
VOLUME /mnt
USER root
WORKDIR /
CMD ["/usr/sbin/sshd", "-D"]