No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Dockerfile.ubuntu 1.5KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. FROM ubuntu:xenial
  2. MAINTAINER ViViDboarder <vividboarder@gmail.com>
  3. RUN apt-get update \
  4. && apt-get install -y --no-install-recommends \
  5. software-properties-common python-software-properties \
  6. && add-apt-repository ppa:duplicity-team/ppa \
  7. && apt-get update \
  8. && apt-get install -y --no-install-recommends \
  9. cron \
  10. duplicity \
  11. lftp \
  12. ncftp \
  13. openssh-client \
  14. python-cloudfiles \
  15. python-gdata \
  16. python-oauthlib \
  17. python-paramiko \
  18. python-pexpect \
  19. python-pip \
  20. python-setuptools \
  21. python-swiftclient \
  22. python-urllib3 \
  23. rsync \
  24. tahoe-lafs \
  25. && pip install -U boto b2 \
  26. && apt-get autoremove -y python-pip \
  27. && apt-get clean \
  28. && rm -rf /var/apt/lists/*
  29. VOLUME /root/.cache/duplicity
  30. VOLUME /backups
  31. VOLUME /var/lock/duplicity
  32. ENV BACKUP_DEST="file:///backups"
  33. ENV BACKUP_NAME="backup"
  34. ENV PATH_TO_BACKUP="/data"
  35. ENV PASSPHRASE="Correct.Horse.Battery.Staple"
  36. ENV FLOCK_WAIT=60
  37. # Cron schedules
  38. ENV CRON_SCHEDULE=""
  39. ENV FULL_CRON_SCHEDULE=""
  40. ENV VERIFY_CRON_SCHEDULE=""
  41. # Create script dirs
  42. RUN mkdir -p /scripts/backup/before
  43. RUN mkdir -p /scripts/backup/after
  44. RUN mkdir -p /scripts/restore/before
  45. RUN mkdir -p /scripts/restore/after
  46. COPY backup.sh /
  47. COPY restore.sh /
  48. COPY start.sh /
  49. COPY verify.sh /
  50. COPY healthcheck.sh /
  51. COPY cron-exec.sh /
  52. HEALTHCHECK CMD /healthcheck.sh
  53. CMD [ "/start.sh" ]