|
1 | | -FROM python:3.9-slim@sha256:5f0192a4f58a6ce99f732fe05e3b3d00f12ae62e183886bca3ebe3d202686c7f |
2 | | - |
3 | | -ENV PATH /usr/local/bin:$PATH |
4 | | -ENV PYTHON_VERSION 3.9.17 |
5 | | - |
6 | | -RUN \ |
7 | | - adduser --system --disabled-password --shell /bin/bash vscode && \ |
8 | | - # install docker |
9 | | - apt-get update && \ |
10 | | - apt-get install ca-certificates curl gnupg lsb-release -y && \ |
11 | | - mkdir -m 0755 -p /etc/apt/keyrings && \ |
12 | | - curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg && \ |
13 | | - echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null && \ |
14 | | - apt-get update && \ |
15 | | - apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y && \ |
16 | | - usermod -aG docker vscode && \ |
17 | | - apt-get clean |
| 1 | +ARG PY_VER |
| 2 | +ARG DISTRO |
| 3 | +FROM mcr.microsoft.com/devcontainers/python:${PY_VER}-${DISTRO} |
18 | 4 |
|
19 | 5 | RUN \ |
20 | 6 | # dev setup |
21 | 7 | apt update && \ |
22 | 8 | apt-get install sudo git gcc bash-completion graphviz default-mysql-client -y && \ |
23 | | - usermod -aG sudo vscode && \ |
24 | | - echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers && \ |
25 | | - pip install --no-cache-dir --upgrade black pip && \ |
26 | | - echo '. /etc/bash_completion' >> /home/vscode/.bashrc && \ |
27 | | - echo 'export PS1="\[\e[32;1m\]\u\[\e[m\]@\[\e[34;1m\]\H\[\e[m\]:\[\e[33;1m\]\w\[\e[m\]$ "' >> /home/vscode/.bashrc && \ |
| 9 | + pip install --no-cache-dir --upgrade black faker ipykernel pip && \ |
28 | 10 | apt-get clean |
29 | 11 |
|
| 12 | +# tutorial dependencies |
30 | 13 | COPY ./requirements.txt /tmp/ |
31 | | - |
32 | 14 | RUN \ |
33 | | - # tutorial dependencies |
34 | | - pip install --no-cache-dir black faker ipykernel && \ |
35 | 15 | pip install --no-cache-dir -r /tmp/requirements.txt --upgrade && \ |
36 | 16 | rm /tmp/requirements.txt |
37 | 17 |
|
38 | | -ENV DJ_HOST fakeservices.datajoint.io |
| 18 | +USER root |
| 19 | +ENV DJ_HOST db |
39 | 20 | ENV DJ_USER root |
40 | 21 | ENV DJ_PASS simple |
41 | | - |
42 | | -USER vscode |
43 | | -CMD bash -c "sudo rm /var/run/docker.pid; sudo dockerd" |
0 commit comments