[CONTAINER] CrashPlan & CrashPlan-Desktop


Recommended Posts

[glow=red,2,300]Crashplan Docker container[/glow]

 

As of Feb 15, 2016 the Crashplan and Crashplan-Desktop containers have been merged, and an RDP client is no longer necessary.  You can ignore the first 45 pages or so of comments in this thread, as they pertain to the older setup.

 

[glow=red,2,300]Existing Users - How to Upgrade[/glow]

 

To upgrade from an older version:

  • Go to the Docker tab
  • Click on the CrashPlan-Desktop docker icon and choose Remove
  • Click the Crashplan docker icon and hit Edit
  • Ensure it is set to Host mode, or be prepared to add/modify the ports
  • Click the button for Advanced View
  • Change the WebUI field to:

http://[iP]:[PORT:4280]/vnc.html?autoconnect=true&host=[iP]&port=[PORT:4280]

  • Change the description field to:

    With unlimited, set-it-and-get-at-it backup to multiple destinations, plus anywhere, anytime access to ALL your files, CrashPlan is the simplest, surest way to protect your digital life.[br][br]
    [b][span style='color: #E80000;']Notes:[/span][/b][br][br]
    [*]The web interface is usually hosted on port 4280; if you need to change it, please enable the Advanced View, edit the [b]WEB_PORT[/b] variable and the [b]WebUI[/b]  field accordingly.

  • Hit Save

 

[glow=red,2,300]New Users - How to Install[/glow]

 

  • It is probably easiest to install the Community Applications plugin first, then go to the Apps tab and search for Crashplan.  Add the CrashPlan app (not CrashPlan-Desktop) by gfjardim.
  • Alternatively, you can go to the Docker tab, choose Docker Repositories, add "https://github.com/gfjardim/docker-containers/tree/templates" to your list of repositories, switch back to the Docker Containers tab, choose Add Container and select gfjardim -> Crashplan.
  • Map the /config container volume to the appropriate place on your host system, such as /mnt/cache/appdata/crashplan/ .  Be sure the appdata share is set to "cache only".
  • Map /data (or /mnt) on the container side to /mnt on the host side.  Note that whatever path you input on the container side will be the path you access from within the CrashPlan app.
  • Hit Save

 

 

[glow=red,2,300]How to access the CrashPlan interface[/glow]

 

Using a web browser:

  • Go to the Docker tab, click the CrashPlan docker icon and choose WebUI.

 

Using a stand-alone VNC client:

  • Configure your favorite VNC client to connect to your tower's IP address on port 4279.

 

Using a the CrashPlan interface on another computer:

  • This should still be possible, although there isn't much a need for it.  If someone wants to write up instructions I can link to it from here.

 

[glow=red,2,300]Q & A[/glow]

 

Q) Do I need to setup an SSH tunnel to use this container?

A) No. See the section above titled "How to access the CrashPlan interface"

 

Q) By default, the web interface is on port 4280.  Can I change that?

A) Go to the Docker tab, click the CrashPlan icon, and choose Edit. Enable the Advanced view.  Add a variable named WEB_PORT and input the desired port.

 

Q) By default, the VNC interface is on port 4279.  Can I change that?

A) The VNC port will always be one less than the web interface port.

 

Q) Can I protect the web/VNC client with a password?

A) Go to the Docker tab, click the CrashPlan icon, and choose Edit. Enable the Advanced view.  Add a variable named VNC_PASSWD and input the desired password.

 

Q) Where can I get general help with CrashPlan?

A) See the official CrashPlan manual

 

Q) Can I backup my unRAID flash drive using CrashPlan?

A) Yes. Go to the Docker tab, click the CrashPlan icon, and choose Edit. Map /flash on the containter side to /boot on the host side.

 

Then in the CrashPlan interface, configure it to backup the /flash directory.

 

Note: your disk configuration is stored in /flash/config/super.dat.  If you ever restore this file from backup, be certain you are restoring the latest version.  Restoring this file will likely trigger a parity check when the system boots.

 

Q) Can another computer backup to my unRAID array?

A) Yes, but you need to configure CrashPlan to store backups on the array and not in the docker image!

 

You may want to create a new share specifically for this - "CrashplanTower" for example.

 

Load the CrashPlan interface on unRAID and go to Settings -> General.  Configure the "Inbound backup from other computers" option.  Set the "Default backup archive location" to something on your array, such as the CrashplanTower share.  If you mapped /mnt to /mnt earlier, the path would be /mnt/user/CrashplanTower/

 

Go to the Friends area and set the default location for each friend as well.

 

See this page for additional help configuring the default locations.

 

Then configure the other computer to backup to your unRAID system. You could also configure a friend's computer to backup to yours.

 

Note that you cannot backup a backup.

 

Q) Can I backup key files on my array to a local folder?

A) Yes, in the CrashPlan interface go to Destinations -> Folders and configure a local folder. You can use /mnt/user/CrashplanTower if you created that in the previous example.

 

Then create a new backup set and configure it to use that destination.

 

Q) Why is Crashplan storing backups in my docker.img?

A) A few possibilities:

  • First, see the previous two questions to be sure you have configured Crashplan properly.
  • If you are trying to backup to a share on your array, ensure there are not two versions of the same share.  Captialization matters!  i.e. having both CrashplanTower and crashplantower will cause problems.
  • If you are trying to backup to a drive that was mounted by the Unassigned Devices plugin, go to Settings -> Docker and disable/enable Docker.  Dockers are unable to access drives that were mounted after the Docker service was started. Alternatively, you can add this script to automate that.

Q) How can I increase the amount of RAM available to CrashPlan?

A) Read this help page to diagnose random crashes and see if increasing the memory available to CrashPlan will help.  If you mapped your /config folder as suggested above, the logs will be available under \\tower\appdata\crashplan\log

 

Tip - This is not confirmed, but you may need less RAM if you split your backup into multiple backup sets.

 

Q) How can I add CrashPlan client to a reverse proxy's subdirectory?

A) For a Nginx reverse proxy, you can use the following configuration:

 

  location /crashplan/ {
    rewrite ^/crashplan/$  /crashplan/vnc.html?autoconnect=true&host=$server_name/crashplan/&port=443 permanent;
    proxy_pass http://127.0.0.1:4280/;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
  }

 

 

[glow=red,2,300]Known Issues[/glow]

 

OP by ljm42.

  • Upvote 1
Link to comment

to get some logs try docker logs crashplan

 

but if you started the container with only docker start crashplan then i don't think it will work

you need to use something like this

 

docker run -d --net="host" --name="crashplan" -v /mnt:/mnt -v /boot:/boot -v /mnt/user/Crashplan:/data -p 4242:4242 -p 4243:4243 crashplan

 

in my case above he has access to backup the flash drive (boot) and everything under /mnt

not sure about the data folder, as he has not written anything there yet ....

 

Link to comment

Yup, I created it using the example given

docker run -d -h ${HOSTNAME} --name=crashplan -v /mnt/user:/data -v /etc/localtime:/etc/localtime:ro -p 4242:4242 -p 4243:4243 gfjardim/crashplan

 

I'll try removing the container and recreating it using a mix of both of your examples

Link to comment

Checked out the docker bundle and found the config file, used the following to create the container:

root@NAS:/mnt/vm/WHS2011# docker run -d -h ${HOSTNAME} --name=crashplan -v /mnt/user/crashplan:/config -v /mnt/user:/data -v /etc/localtime:/etc/localtime:ro -p 4242:4242 -p 4243:4243 gfjardim/crashplan

Link to comment

The error I'm getting is:

Error: The directory named as part of the path /config/supervisord.log does not exist.

For help, use /usr/bin/supervisord -h

Ok, I found the error and submitted to the Docker Registry. Please remove the container and the image, then add the container again.

 

docker rm -f crashplan

docker rmi gfjardim/crashplan

 

Thanks.

Link to comment

Checked out the docker bundle and found the config file, used the following to create the container:

root@NAS:/mnt/vm/WHS2011# docker run -d -h ${HOSTNAME} --name=crashplan -v /mnt/user/crashplan:/config -v /mnt/user:/data -v /etc/localtime:/etc/localtime:ro -p 4242:4242 -p 4243:4243 gfjardim/crashplan

 

Just removed the log from supervisor.conf file.

Link to comment

I just set this up and have started using Crashplan -- one question I have.  Do you guys back up your /mnt/user share or do you backup the individual /mnt/diskX drives instead?

 

I do backup my user share, it's a lot less trouble to configure, no hiccups since ever.

Link to comment

Thank you for this gfardim!  This is a fairly complex Docker and I really appreciate the work you put into it!

 

BTW, I passed in "-v /mnt:/mnt" and then when I adopted my unRAID 5 Crashplan account all of the paths stayed the same which simplified the process.  At least I assume it will work, it is still synchronizing :)

 

One thing to think about... could this be tweaked to store the identity information outside of the Docker so we don't have to re-adopt it if we rebuild the Docker?

 

Along those lines... it would also be nice if we had access to the logs and to run.conf so we could change the amount of memory available to Crashplan as described here:

  http://support.code42.com/CrashPlan/Latest/Troubleshooting/CrashPlan_Runs_Out_Of_Memory_And_Crashes

 

Thanks again!

Link to comment

Thank you for this gfardim!  This is a fairly complex Docker and I really appreciate the work you put into it!

 

BTW, I passed in "-v /mnt:/mnt" and then when I adopted my unRAID 5 Crashplan account all of the paths stayed the same which simplified the process.  At least I assume it will work, it is still synchronizing :)

 

One thing to think about... could this be tweaked to store the identity information outside of the Docker so we don't have to re-adopt it if we rebuild the Docker?

 

Along those lines... it would also be nice if we had access to the logs and to run.conf so we could change the amount of memory available to Crashplan as described here:

  http://support.code42.com/CrashPlan/Latest/Troubleshooting/CrashPlan_Runs_Out_Of_Memory_And_Crashes

 

Thanks again!

 

I've done that, but will test a little more to see if it sticks.

Link to comment

Just updated this. The id is now stored on the /config directory. Please take a look at the Docker's page to see the command line syntax change.

 

Thanks! I upgraded to the current Docker and it is synchronizing now.  I see the .identify file outside of the Docker, thanks!  Oh cool, this is using phusion now too.

 

I don't mean to be a pain... but I wanted to ask about this article:

  http://support.code42.com/CrashPlan/Latest/Troubleshooting/CrashPlan_Runs_Out_Of_Memory_And_Crashes

 

It references some log files here:

  /usr/local/crashplan/log/service.log.#

and run.conf:

  /usr/local/crashplan/bin/run.conf

 

How would you feel doing the copy/link thing with the /config directory for those?

 

Thanks again!

Link to comment

Just updated this. The id is now stored on the /config directory. Please take a look at the Docker's page to see the command line syntax change.

 

Thanks! I upgraded to the current Docker and it is synchronizing now.  I see the .identify file outside of the Docker, thanks!  Oh cool, this is using phusion now too.

 

I don't mean to be a pain... but I wanted to ask about this article:

  http://support.code42.com/CrashPlan/Latest/Troubleshooting/CrashPlan_Runs_Out_Of_Memory_And_Crashes

 

It references some log files here:

  /usr/local/crashplan/log/service.log.#

and run.conf:

  /usr/local/crashplan/bin/run.conf

 

How would you feel doing the copy/link thing with the /config directory for those?

 

Thanks again!

 

The logs are already in the config directory. I'm using the default settings, that is a minimum of 512M and a maximum of 1024M. Do you have any problems with those values?

Link to comment

The logs are already in the config directory. I'm using the default settings, that is a minimum of 512M and a maximum of 1024M. Do you have any problems with those values?

 

Oh sorry about that.  I don't see any service.logs yet but maybe they will appear once it gets past the "synchronizing" stage.

 

I haven't had any memory problems yet, but that help page says you need 1GB RAM for every 1TB of data being backed up, so I assume I'll need more.

 

I don't know if it helps, but I'm using multiple backup sets with the hope that it will need less ram.

Link to comment

I haven't had any memory problems yet, but that help page says you need 1GB RAM for every 1TB of data being backed up, so I assume I'll need more.

 

Does it mean that if I have 30TB of data, it will take 30GB of RAM just for Crashplan?

 

According to the Crashplan help pages:

  http://support.code42.com/CrashPlan/Latest/Troubleshooting/CrashPlan_Runs_Out_Of_Memory_And_Crashes

 

Code42 typically recommends allocating 1 GB (1024 MB) of memory per 1 TB of storage (or per 1 million files).? Although CrashPlan only requires approximately 600 MB of memory per 1 TB of storage (or per 1 million files), our recommendation is intended to account for growth in your file selection.

 

What I do to try and get around this is create multiple backup sets.  My theory is that if I can keep each backup set to around 1 TB I'll be ok.  It seems to work, I've backed up 3.5 TB so far and haven't had any memory problems.

 

But 30 TB is a different story :) That would probably take a few years to backup.  I'd use Crashplan for your critical data and then find some other kind of local backup for the less critical data.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.