Skip to content
Snippets Groups Projects
Select Git revision
  • d4f8f48c3fe1f7cd1bc98e29d6a237f046bffee3
  • main default protected
  • dev protected
  • Issue/3142-kpiGenerator
  • Hotfix/3115-userReportingEmpty2
  • Hotfix/3115-userReportingEmpty
  • Issue/3073-kpi
  • Issue/2492-respOrg
  • Issue/3005-kpiReportingBroken
  • Issue/2982-kpiDataPub
  • gitkeep
  • Issue/2847-reporting
  • Issue/2850-removeGrantId
  • Issue/2432-publicationKpi
  • Hotfix/xxxx-rors
  • Issue/2666-adminCronjobs-theSequal
  • Issue/2666-adminCronjobs
  • Issue/2568-betterLogging
  • Issue/2518-docs
  • Hotfix/2388-sensitive
  • Issue/2330-fixNaNQuotainAdmin
  • v1.2.10
  • v1.2.9
  • v1.2.8
  • v1.2.7
  • v1.2.6
  • v1.2.5
  • v1.2.4
  • v1.2.3
  • v1.2.2
  • v1.2.1
  • v1.2.0
  • v1.1.1
  • v1.1.0
  • v1.0.9
  • v1.0.8
  • v1.0.7
  • v1.0.6
  • v1.0.5
  • v1.0.4
  • v1.0.3
41 results

KpiConfiguration.cs

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    Dockerfile 3.05 KiB
    ################################################################################
    # Base
    #  - a single-version python slim-bullseye image
    # Installs
    #  - poetry in /opt/poetry
    #  - adds a user called 'zen'
    # Size
    #  - 300MB
    ################################################################################
    
    ARG PYTHON_VERSION=3.8.15
    ARG DEBIAN_VERSION=bullseye
    
    FROM python:${PYTHON_VERSION}-slim-${DEBIAN_VERSION}
    
    ARG NAME=poetry-zen
    ARG POETRY_VERSION=1.3.2
    ENV POETRY_HOME=/opt/poetry
    ENV PATH="${POETRY_HOME}/bin:${PATH}"
    
    ################################################################################
    # Poetry
    ################################################################################
    
    RUN apt-get update && apt-get install -y --no-install-recommends \
        # For poetry
        curl \
        # For pytrees
        graphviz \
        make \
        # For convenience
        bash \
        bash-completion \
        ca-certificates \
        git \
        less \
        ssh \
        vim \
        wget \
        && \
        curl -sSL https://install.python-poetry.org | POETRY_VERSION=${POETRY_VERSION} python3 - && \
        poetry config virtualenvs.create false && \
        poetry completions bash >> ~/.bash_completion
    
    ################################################################################
    # Login Shells for Debugging & Development
    ################################################################################
    
    # In a login shell (below), the PATH env doesn't survive, configure it at ground zero
    RUN echo "export PATH=${POETRY_HOME}/bin:${PATH}" >> /etc/profile
    ENV TERM xterm-256color
    ENTRYPOINT ["/bin/bash", "--login", "-i"]
    
    ################################################################################
    # Development with a user, e.g. for vscode devcontainers
    ################################################################################
    
    ARG USERNAME=zen
    ARG USER_UID=1000
    ARG USER_GID=${USER_UID}
    
    RUN groupadd --gid $USER_GID $USERNAME && \
        useradd --uid $USER_UID --gid $USER_GID -s "/bin/bash" -m $USERNAME && \
        apt-get install -y sudo && \
        echo "${USERNAME} ALL=NOPASSWD: ALL" > /etc/sudoers.d/${USERNAME} && \
        chmod 0440 /etc/sudoers.d/${USERNAME}
    RUN echo "export PS1='\[\033[01;36m\](docker)\[\033[00m\] \[\033[01;32m\]\u@${NAME}\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '" >> /home/${USERNAME}/.bashrc && \
        echo "alias ll='ls --color=auto -alFNh'" >> /home/${USERNAME}/.bashrc && \
        echo "alias ls='ls --color=auto -Nh'" >> /home/${USERNAME}/.bashrc && \
        poetry completions bash >> /home/${USERNAME}/.bash_completion
    
    #    touch /home/${USERNAME}/.bash_completion && chown ${USERNAME}:${USERNAME} /home/${USERNAME}/.bash_completion
    
    ################################################################################
    # Debugging with root
    ################################################################################
    
    RUN echo "export PS1='\[\033[01;36m\](docker)\[\033[00m\] \[\033[01;32m\]\u@${NAME}\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '" >> ${HOME}/.bashrc && \
        echo "alias ll='ls --color=auto -alFNh'" >> ${HOME}/.bashrc && \
        echo "alias ls='ls --color=auto -Nh'" >> ${HOME}/.bashrc