ARG VARIANT=latest FROM netboxcommunity/netbox:${VARIANT} ARG DEBIAN_FRONTEND=noninteractive # Install APT packages RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ && apt-get -y install --no-install-recommends curl git make openssh-client sudo wget zsh \ && apt-get autoremove -y && apt-get clean -y && rm -rf /var/lib/apt/lists/* # Install development & ide dependencies COPY requirements-dev.txt /tmp/pip-tmp/ RUN /opt/netbox/venv/bin/python3 -m pip install --disable-pip-version-check --no-cache-dir install -r /tmp/pip-tmp/requirements-dev.txt \ && rm -rf /tmp/* ARG USERNAME=vscode ARG USER_UID=1000 ARG USER_GID=$USER_UID RUN useradd -md /home/vscode -s /usr/bin/zsh -u $USER_UID $USERNAME \ && usermod -aG sudo $USERNAME \ && echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers \ && mkdir /opt/netbox/netbox/netbox-access-lists \ && chown $USERNAME:$USERNAME /opt/netbox /etc/netbox /opt/unit -R USER $USERNAME # Add oh my zsh RUN wget --quiet https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh || true COPY .bashrc /home/vscode/.bashrc COPY .zshrc /home/vscode/.zshrc WORKDIR /opt/netbox/netbox/netbox-access-lists USER root COPY entrypoint-dev.sh /bin/entrypoint-dev.sh RUN chmod +x /bin/entrypoint-dev.sh CMD ["/bin/entrypoint-dev.sh"]