Dockerfile 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. FROM alpine:latest
  2. LABEL maintainer="Jeremy Zheng"
  3. RUN apk update
  4. RUN apk upgrade
  5. RUN apk add vim curl bash zsh pwgen openssl git tmux rsync \
  6. openssh-client sshpass \
  7. build-base cmake git \
  8. python3 py3-pip python3-dev \
  9. openssl-dev
  10. RUN mkdir -p $HOME/downloads $HOME/local $HOME/tmp
  11. # https://github.com/ohmyzsh/ohmyzsh
  12. RUN git clone https://github.com/ohmyzsh/ohmyzsh.git $HOME/.oh-my-zsh
  13. RUN cp $HOME/.oh-my-zsh/templates/zshrc.zsh-template $HOME/.zshrc
  14. RUN echo 'export PATH=$HOME/.local/bin:$PATH' >> $HOME/.profile
  15. RUN echo 'source $HOME/.profile' >> $HOME/.zshrc
  16. RUN git config --global core.quotepath false
  17. RUN git config --global http.version HTTP/1.1
  18. RUN git config --global pull.rebase false
  19. RUN echo 'set-option -g history-limit 102400' > $HOME/.tmux.conf
  20. RUN echo 'set-option -g default-shell "/bin/zsh"' >> $HOME/.tmux.conf
  21. RUN sh -c ". $HOME/.profile \
  22. && pip install --user ansible paramiko"
  23. RUN echo 'export ANSIBLE_HOST_KEY_CHECKING=False' >> $HOME/.profile
  24. RUN echo 'export PATH=$HOME/.local/bin:$PATH' >> $HOME/.profile
  25. RUN echo 'alias peony="ANSIBLE_LOG_PATH=$HOME/tmp/$(date +%Y%m%d%H%M%S).log ansible-playbook"' >> $HOME/.profile
  26. RUN echo "$(date -u +%4Y%m%d%H%M%S)" | tee /VERSION
  27. VOLUME /workspace
  28. WORKDIR /workspace
  29. CMD ["/bin/zsh", "-l"]