CrashPlan PRO Docker Container

I used CrashPlan years ago but eventually gave up on it because it needed to be always running in the background. I did like the functionality and how it worked since I actually needed to restore some files one time. I canceled my subscription back then and never really found anything better that was multiplatform.

I always wanted to get it working in a FreeNAS jail since that would be the ideal solution. I could never get the jail to work correctly due to some Java problems. FreeNAS Corral added virtual machine and docker capabilities and there was a CrashPlan container available. This made things easy so I signed back up and everything worked great.

Unfortunately, Corral was scrapped and is a dead project. So basically if I want CrashPlan backups to work, I’m in the same situation as before.

I can either stick with Corral until docker support is added to a supported FreeNAS release or I can move it to a Debian Linux server with the data mounted through NFS or sshfs. Corral has several bugs so I decided to move the container over to a Linux server so that I can eventually upgrade to FreeNAS 11. The servers are connected through 10 Gbit so the speeds are very good with compression turned off.

  1. docker pull jlesage/crashplan-pro

  2. /etc/systemd/system/crashplan.service

    • 1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      [Unit]
      Description=CrashPlan PRO
      After=docker.service
      Requires=docker.service
      [Service]
      Restart=always
      ExecStartPre=/usr/bin/docker pull jlesage/crashplan-pro
      ExecStart=/usr/bin/docker run --rm --name crashplan-pro -e CRASHPLAN_SRV_MAX_MEM=8192m -v <LOCAL CONFIG PATH>:/config:rw -v <LOCAL DATA PATH>:/data:ro -p 5800:5800 jlesage/crashplan-pro
      ExecStop=/usr/bin/docker stop crashplan-pro
      [Install]
      WantedBy=local.target
    • Configure the memory, config path, and data path above.

  3. systemctl enable crashplan.service

  4. systemctl start crashplan.service

Connect to the UI using a web browser: <ip>:5800

You may need to increase the inotify limit. You can set that in /etc/sysctl.conf:

1
fs.inotify.max_user_watches=1048576