-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
45 lines (36 loc) · 1.26 KB
/
Dockerfile
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
FROM alpine:3.8
RUN set -x \
&& apk add --no-cache \
# General IDE requirements
neovim \
neovim-doc \
openssh \
git \
curl \
bash \
zsh \
docker \
the_silver_searcher \
xclip \
# Default directory
&& mkdir -p /workspace
# Install docker compose
RUN curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
RUN addgroup -S me && adduser -S -G me me --uid=1000
RUN addgroup me xfs
USER me
# Configure zsh and oh-my-zsh
RUN curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | zsh || true
ENV SHELL /bin/zsh
# Install Fuzzy search
RUN git clone --depth 1 --quiet https://github.com/junegunn/fzf.git ~/.fzf \
&& ~/.fzf/install --key-bindings --update-rc --completion
# Install Neovim plugin manager and install plugins
RUN curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs --silent \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
COPY --chown=me:me init.vim /home/me/.config/nvim/init.vim
RUN nvim -i NONE -c PlugInstall -c quitall > /dev/null 2>&1
ENV FZF_DEFAULT_COMMAND 'ag -g ""'
WORKDIR /workspace
VOLUME /workspace
ENTRYPOINT ["zsh"]