11FROM python:3.6-slim as BUILDER
22
3+ WORKDIR /tmp
4+
35# FROM python:3.7-slim AS compile-image
46RUN apt-get update
57RUN apt-get install -y --no-install-recommends build-essential gcc wget git
68
7- ENV PATH=/root/.local/bin:$PATH
9+ RUN useradd -md /home/avd -s /bin/zsh -u 1000 avd
10+ USER avd
11+
12+ ENV PATH=$PATH:/home/avd/.local/bin
813RUN pip3 install --upgrade pip
914RUN wget --quiet https://raw.githubusercontent.com/aristanetworks/ansible-avd/devel/development/requirements.txt
1015RUN pip3 install --user -r requirements.txt
@@ -25,6 +30,7 @@ LABEL com.example.version.is-production="False"
2530ARG TERM=xterm
2631
2732ENV DEBIAN_FRONTEND noninteractive
33+ ENV PROJECT_DIR /projects/
2834
2935# Install dependencies.
3036RUN apt-get update \
@@ -39,24 +45,40 @@ RUN apt-get update \
3945 sshpass \
4046 git-extras \
4147 openssh-client \
48+ sudo \
4249 && rm -rf /var/lib/apt/lists/* \
4350 && rm -Rf /usr/share/doc && rm -Rf /usr/share/man \
4451 && apt-get clean
4552
46- COPY --from=BUILDER /root/.local/ /root/.local
47- COPY entrypoint.sh /bin/entrypoint.sh
48- RUN chmod +x /bin/entrypoint.sh
53+ RUN curl -fsSL https://get.docker.com | sh
54+ RUN useradd -md /home/avd -s /bin/zsh -u 1000 avd
55+ RUN usermod -aG docker avd\
56+ && usermod -aG sudo avd \
57+ && echo "avd ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
4958
50- # Create the /project directory and add it as a mountpoint
51- WORKDIR /projects
52- VOLUME ["/projects" ]
59+ USER avd
60+
61+ # Copy python collection
62+ COPY --from=BUILDER /home/avd/.local/ /home/avd/.local
63+ ENV PATH=$PATH:/home/avd/.local/bin
5364
5465# Install Oh My ZSH to provide improved shell
5566RUN wget --quiet https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh || true \
5667 && echo 'plugins=(ansible common-aliases safe-paste git jsontools history git-extras)' >> $HOME/.zshrc \
5768 && echo 'eval `ssh-agent -s`' >> $HOME/.zshrc \
58- && echo 'export TERM=xterm' >> $HOME/.zshrc
69+ && echo 'export TERM=xterm' >> $HOME/.zshrc \
70+ && echo "export LC_ALL=C.UTF-8" >> $HOME/.zshrc \
71+ && echo "export LANG=C.UTF-8" >> $HOME/.zshrc \
72+ && echo "export LC_ALL=C.UTF-8" >> $HOME/.zshrc \
73+ && echo "export LANG=C.UTF-8" >> $HOME/.zshrc \
74+ && echo 'export PATH=$PATH:/home/avd/.local/bin' >> $HOME/.zshrc
75+
76+ # Set default folder
77+ WORKDIR /projects
78+ VOLUME ["/projects" ]
5979
6080# Use ZSH as default shell with default oh-my-zsh theme
61- ENV PATH=$PATH:/root/.local/bin
81+ USER root
82+ COPY entrypoint.sh /bin/entrypoint.sh
83+ RUN chmod +x /bin/entrypoint.sh
6284CMD [ "/bin/entrypoint.sh" ]
0 commit comments