forked from jmgilman/dev-container
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile_minimal
31 lines (24 loc) · 966 Bytes
/
Dockerfile_minimal
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
# syntax = docker/dockerfile:experimental
FROM alpine:edge AS base
WORKDIR /root
SHELL ["/bin/sh", "-c"]
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories
RUN apk add git openssh-client neovim man-pages alpine-sdk zsh curl --update
# install deps needed by neovim
RUN apk add wget gzip neovim-doc ripgrep nodejs npm --update
# pre-download lazy.nvim
RUN mkdir -p -m 0700 ~/.ssh && ssh-keyscan github.com >> ~/.ssh/known_hosts
RUN --mount=type=ssh git clone --filter=blob:none git@github.com:folke/lazy.nvim.git --branch=stable /root/.local/share/nvim/lazy/lazy.nvim
# copy project files
COPY .zshrc .zshrc
COPY projects projects
COPY nvim .config/nvim
# # copy these hidden folders during development for faster
# # loading of lazy.nvim, mason, and treesitter
# COPY .cache /root/.cache
# COPY .local /root/.local
FROM base
SHELL ["/bin/zsh", "-c"]
WORKDIR /root
RUN nvim --headless +"Lazy! sync" +qa
CMD ["/bin/zsh"]