mirror of
https://github.com/andreinechaev/nvcc4jupyter.git
synced 2026-06-14 11:10:49 +05:30
Create devcontainer for quick dev setups
This commit is contained in:
@@ -0,0 +1,19 @@
|
|||||||
|
FROM ubuntu
|
||||||
|
|
||||||
|
ARG VENV_PATH=/opt/dev-venv
|
||||||
|
ENV VENV_ACTIVATE=${VENV_PATH}/bin/activate
|
||||||
|
|
||||||
|
RUN apt update
|
||||||
|
RUN apt install -y python3.10-venv nvidia-cuda-toolkit gcc vim git
|
||||||
|
|
||||||
|
# the mkdir command bypasses a profiler error, which allows us to run it with
|
||||||
|
# host code only to at least check that the profiler parameters are correctly
|
||||||
|
# provided; without this line, some tests will fail
|
||||||
|
RUN mkdir -p /usr/lib/x86_64-linux-gnu/nsight-compute/sections
|
||||||
|
|
||||||
|
# we create the virtualenv here so that the devcontainer.json setting
|
||||||
|
# python.defaultInterpreterPath can be used to find it; if we do it in the
|
||||||
|
# post_create.sh script, the virtualenv will not be loaded and features like
|
||||||
|
# pylance, black, isort, etc. will not work
|
||||||
|
RUN python3.10 -m venv ${VENV_PATH}
|
||||||
|
RUN echo "source ${VENV_ACTIVATE}" >> ~/.bashrc
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
"name": "Python Environment",
|
||||||
|
"build": {
|
||||||
|
"dockerfile": "Dockerfile",
|
||||||
|
"context": ".."
|
||||||
|
},
|
||||||
|
"postCreateCommand": "bash .devcontainer/post_create.sh",
|
||||||
|
"customizations": {
|
||||||
|
"vscode": {
|
||||||
|
"extensions": [
|
||||||
|
"editorconfig.editorconfig",
|
||||||
|
"ms-azuretools.vscode-docker",
|
||||||
|
"ms-python.python",
|
||||||
|
"ms-python.vscode-pylance",
|
||||||
|
"ms-python.pylint",
|
||||||
|
"ms-python.isort",
|
||||||
|
"ms-python.flake8",
|
||||||
|
"ms-python.black-formatter",
|
||||||
|
"ryanluker.vscode-coverage-gutters"
|
||||||
|
],
|
||||||
|
"settings": {
|
||||||
|
"python.defaultInterpreterPath": "/opt/dev-venv/bin/python"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# install developer dependencies
|
||||||
|
pip install .[dev]
|
||||||
|
|
||||||
|
# make sure the developer uses pre-commit hooks
|
||||||
|
pre-commit install
|
||||||
Reference in New Issue
Block a user