added devcontainer support for vscode (#992)

* added devcontainer support

* added nodejs & npm to image

---------

Co-authored-by: Kyriakos Akriotis <kyriakos.akriotis@outlook.com>
pull/1040/merge
Kyriakos Akriotis 8 months ago committed by GitHub
parent 1433100e9a
commit fc228db431
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -0,0 +1,29 @@
# use latest python 3 alpine image.
FROM python:3-alpine
# install system dependencies.
RUN apk update && apk add --no-cache \
gcc libc-dev g++ graphviz git bash go imagemagick inkscape ttf-opensans curl fontconfig xdg-utils \
nodejs npm
# install go package.
RUN go install github.com/mingrammer/round@latest
# install fonts
RUN curl -O https://noto-website.storage.googleapis.com/pkgs/NotoSansCJKjp-hinted.zip \
&& mkdir -p /usr/share/fonts/NotoSansCJKjp \
&& unzip NotoSansCJKjp-hinted.zip -d /usr/share/fonts/NotoSansCJKjp/ \
&& rm NotoSansCJKjp-hinted.zip \
&& fc-cache -fv
# add go bin to path.
ENV PATH "$PATH:/root/go/bin"
# project directory.
WORKDIR /usr/src/diagrams
# Copy the rest of your app's source code from your host to your image filesystem.
COPY . .
# install python requirements.
RUN pip install black graphviz jinja2

@ -0,0 +1,20 @@
{
"name": "diagrams",
"build": {
// Path is relative to the devcontainer.json file.
"dockerfile": "Dockerfile"
},
"customizations": {
"vscode": {
"extensions": [
"ms-python.python",
"ms-python.debugpy",
"mhutchie.git-graph",
"mutantdino.resourcemonitor",
"tehpeng.diagramspreviewer"
]
}
},
"workspaceMount": "source=${localWorkspaceFolder},target=/usr/src/diagrams,type=bind",
"workspaceFolder": "/usr/src/diagrams"
}
Loading…
Cancel
Save