Dockerfile 1.9 KB

123456789101112131415161718192021222324252627282930313233343536
  1. FROM rockylinux:9.1
  2. LABEL vendor="volkovro"
  3. ENV LC_CTYPE C.UTF-8
  4. ENV LANG en_US.utf8
  5. ENV VERSIONGO 1.20.1
  6. ENV VERSIONYQ 4.31.1
  7. ENV VERIFY_CHECKSUM false
  8. ADD ./.bashrc /root/
  9. ADD ./.vimrc /root/
  10. ADD ./.tmux.conf /root
  11. RUN dnf upgrade -y && \
  12. dnf install -y \
  13. git gettext wget vim vim-common tmux jq rsync tar python3-pip gcc make bash-completion && \
  14. git clone https://github.com/chriskempson/base16-shell.git /root/.config/base16-shell && chmod +x /root/.config/base16-shell/scripts/* && \
  15. curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim && vim -c "set nomore" -c PlugInstall -c q -c q && \
  16. curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl && chmod +x kubectl && mv kubectl /usr/local/bin/ && \
  17. curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash && \
  18. echo -e "\nDo not panic! Software download in progress\n" && \
  19. wget -q https://github.com/mikefarah/yq/releases/download/v$VERSIONYQ/yq_linux_amd64 -O /usr/bin/yq && chmod +x /usr/bin/yq && \
  20. wget -q https://golang.org/dl/go$VERSIONGO.linux-amd64.tar.gz -P /root/ && tar -C /usr/local -xzf /root/go$VERSIONGO.linux-amd64.tar.gz && \
  21. rm -rf /root/go$VERSIONGO.linux-amd64.tar.gz && \
  22. pip3 install -U pip && \
  23. pip install ansible awscli powerline-status && \
  24. wget -q -O- https://sourceforge.net/projects/sshpass/files/latest | tar -xz && ./sshpass-*/configure && make && make install && rm -rf sshpass-* && \
  25. echo -e "\nsource <(kubectl completion bash)\nsource <(helm completion bash)\nsource /etc/profile.d/bash_completion.sh" >> /root/.bashrc && \
  26. echo "source $(find /usr/local/lib -name "powerline.conf" 2>/dev/null)" >> /root/.tmux.conf && \
  27. dnf clean all
  28. ENV VERIFY_CHECKSUM true
  29. WORKDIR /mnt