Dockerfile 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. FROM perl:5.20
  2. RUN apt-get update && apt-get install -y git vim --no-install-recommends && rm -rf /var/lib/apt/lists/*
  3. # secure by default ♥ (thanks to sri!)
  4. ENV PERL_CPANM_OPT --verbose --mirror https://cpan.metacpan.org
  5. # TODO find a way to make --mirror-only / SSL work with backpan too :(
  6. RUN cpanm Digest::SHA Module::Signature
  7. # TODO find a way to make --verify work with backpan as well :'(
  8. #ENV PERL_CPANM_OPT $PERL_CPANM_OPT --verify
  9. # reinstall cpanm itself, for good measure
  10. RUN cpanm App::cpanminus
  11. RUN cpanm [email protected]
  12. RUN cpanm EV
  13. RUN cpanm IO::Socket::IP
  14. RUN cpanm --notest IO::Socket::SSL
  15. # the tests for IO::Socket::SSL like to hang... :(
  16. RUN cpanm Term::UI
  17. ENV LANG C.UTF-8
  18. RUN mkdir ~/.vim ~/.vim/bundle ~/.vim/autoload
  19. RUN set -x \
  20. && git clone https://github.com/tpope/vim-pathogen.git ~/.vim/bundle/pathogen \
  21. && ln -s ../bundle/pathogen/autoload/pathogen.vim ~/.vim/autoload/
  22. RUN git clone https://github.com/jtratner/vim-flavored-markdown.git ~/.vim/bundle/ghmarkdown
  23. RUN git clone https://github.com/nanotech/jellybeans.vim.git ~/.vim/bundle/jellybeans
  24. RUN { \
  25. echo 'scriptencoding utf-8'; \
  26. \
  27. echo 'execute pathogen#infect()'; \
  28. \
  29. echo 'syntax on'; \
  30. echo 'filetype plugin indent on'; \
  31. echo 'set list listchars=tab:»·,nbsp:_,extends:¬ noet ts=4 sw=4 nobackup noswapfile'; \
  32. \
  33. echo 'set background=dark'; \
  34. echo 'colorscheme jellybeans'; \
  35. \
  36. echo 'au FilterWritePre * if &diff | setlocal wrap< | endif'; \
  37. \
  38. echo 'au BufNewFile,BufRead *.md,*.markdown setlocal filetype=ghmarkdown'; \
  39. } > ~/.vimrc
  40. COPY . /usr/src/docker-library-docs
  41. WORKDIR /usr/src/docker-library-docs
  42. ENTRYPOINT ["./push.pl"]