[CONTAINER] CrashPlan & CrashPlan-Desktop


Recommended Posts

I've been trying to configure the CrashPlan Docker to replace my ISPs version of CrashPlanPro, but I'm beginning to suspect that this is not possible.

I need to be able to set a different CrashPlan host to which the backup engine connects (i.e. my ISPs CrashPlanPro host), but this obviously cannot be done via the GUI.

I'm afraid I haven't been able to find a config file setting for this either, but if any of you could enlighten me on this, it would be highly appreciated :)

Link to comment

Is it possible to use a traditional VNC app to connect to the web interface ?

 

I use an iPad quite often and it's very difficult to use via the web interface. I tried with a VNC connect to my unraid ip, port 4280 without any luck.

 

Thanks

 

I connect using UltraVNC viewer. Lots of options. I connect to several VM's and just use the right port.

http://www.uvnc.com/downloads/ultravnc.html

ultravnc.png.6e2af7f207221deca417e80232e15f7c.png

Link to comment

Thank you, thank you, and thank you for this very welcome update!!! Fantastic idea to merge a desktop inside the docker!! It's awesome!! Just one thing: when I opened my unRAID setup page, I found there was an update of the docker available, and I just updated it. In the last step of the update I got an error, something like removing something after the update. It seems to work fine, but I get a few errors on the log:

 

Warning: could not find self.pem
No installed websockify, attempting to clone websockify...
_XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6
_XSERVTransOpen: transport open failed for inet6/GALEON:1
_XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6
_XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created.

 

Is this dangerous? Is there any way to fix it? Maybe reinstalling the docker without deleting the user preferences?

Link to comment

Thank you, thank you, and thank you for this very welcome update!!! Fantastic idea to merge a desktop inside the docker!! It's awesome!! Just one thing: when I opened my unRAID setup page, I found there was an update of the docker available, and I just updated it. In the last step of the update I got an error, something like removing something after the update. It seems to work fine, but I get a few errors on the log:

 

Warning: could not find self.pem
No installed websockify, attempting to clone websockify...
_XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6
_XSERVTransOpen: transport open failed for inet6/GALEON:1
_XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6
_XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created.

 

Is this dangerous? Is there any way to fix it? Maybe reinstalling the docker without deleting the user preferences?

 

It's not warmfull, just complaining about the absence of a IPv6 interface. It shows even if I disable the IPv6 interface, so i gave up.

Link to comment

Thank you, thank you, and thank you for this very welcome update!!! Fantastic idea to merge a desktop inside the docker!! It's awesome!! Just one thing: when I opened my unRAID setup page, I found there was an update of the docker available, and I just updated it. In the last step of the update I got an error, something like removing something after the update. It seems to work fine, but I get a few errors on the log:

 

Warning: could not find self.pem
No installed websockify, attempting to clone websockify...
_XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6
_XSERVTransOpen: transport open failed for inet6/GALEON:1
_XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6
_XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created.

 

Is this dangerous? Is there any way to fix it? Maybe reinstalling the docker without deleting the user preferences?

 

It's not warmfull, just complaining about the absence of a IPv6 interface. It shows even if I disable the IPv6 interface, so i gave up.

 

OK! Then I'll say you again: Thank you, thank you and thank you for mixing The Desktop with the main docker! :)

Link to comment

[glow=red,2,300]DISCLAIMER:[/glow]

 

This is an advanced mod to this container, so don't attempt it if you don't know what you're doing...

 

GOAL: add notifications to CrashPlan:

 

1) Add the code below in a script file on the flash drive (e.g. /boot/custom/crashplan_notify.sh):

 

#!/bin/bash

# Set UNRAID_ADDR to "172.17.42.1" and set UNRAID_PASS if your container's network is set to bridge.
UNRAID_ADDR="127.0.0.1" 
UNRAID_PASS=""
CHANNEL="1"

#  Available Channels
#
#  1 = notify using browser-popups only;
#  2 = notify using e-mail only;
#  3 = notify using browser-popups and e-mail;
#  4 = notify using agents only;
#  5 = notify using browser-popups and agents;
#  6 = notify using e-mail and agents;
#  7 = notify using browser popups, e-mail and agents;

send_notify() {
  curl -d "cmd=add" \
       -d "e=CrashPlan: ${1} " \
       -d "s=${2}" \
       -d "d=${3}" \
       -d "i=normal ${CHANNEL}" \
       -u "root:${UNRAID_PASS}" "http://${UNRAID_ADDR}/webGui/include/Notify.php"
}

CP_LOG="/config/log/history.log.0"
while read line ; do
  if [[ $line =~ .?(Starting[[:space:]]backup[[:space:]]to[^:]*)(.*) ]]; then
    send_notify "Backup is starting" "${BASH_REMATCH[1]}." "${BASH_REMATCH[@]}"
  elif [[ $line =~ .?(Completed[[:space:]]backup[[:space:]]to[^:]*)(in .*) ]]; then
    send_notify "Backup completed" "${BASH_REMATCH[1]}." "${BASH_REMATCH[@]}"
  elif [[ $line =~ .?(Starting[[:space:]]backup[[:space:]]from[^:]*)(.*) ]]; then
    send_notify "Receiving backup" "${BASH_REMATCH[1]}." "${BASH_REMATCH[@]}"
  elif [[ $line =~ .?(Completed[[:space:]]backup[[:space:]]from[^:]*)(in .*) ]]; then
    send_notify "Received backup" "${BASH_REMATCH[1]}." "${BASH_REMATCH[@]}"
  fi
done < <(tail -fn0 $CP_LOG)

 

Note: set UNRAID_ADDR to "172.17.42.1" and set UNRAID_PASS if your container's network is set to bridge.

 

 

2) Edit the CrashPlan container, mapping the file above to the container's service dir (e.g. /boot/custom/crashplan_notify.sh -> /etc/service/notify/run) :

 

ekvyuF9.png

 

 

3) Hit Save and you're done.

 

 

Link to comment

[quote name="gfjardim" post="448722" timestamp="1456500201"]
[glow=red,2,300]DISCLAIMER:[/glow]



# Set UNRAID_ADDR to "172.17.42.1" and set UNRAID_PASS if your container's network is set to bridge.
UNRAID_ADDR="127.0.0.1" 
UNRAID_PASS=""
CHANNEL="1"

#  Available Channels
#
#  1 = notify using browser-popups only;
#  2 = notify using e-mail only;
#  3 = notify using browser-popups and e-mail;
#  4 = notify using agents only;
#  5 = notify using browser-popups and agents;
#  6 = notify using e-mail and agents;
#  7 = notify using browser popups, e-mail and agents;

send_notify() {
  curl -d "cmd=add" \
       -d "e=CrashPlan: ${1} " \
       -d "s=${2}" \
       -d "d=${3}" \
       -d "i=normal ${CHANNEL}" \
       -u "root:${UNRAID_PASS}" "http://${UNRAID_ADDR}/webGui/include/Notify.php"
}

CP_LOG="/config/log/history.log.0"
while read line ; do
  if [[ $line =~ .?(Starting[[:space:]]backup[[:space:]]to[^:]*)(.*) ]]; then
    send_notify "Backup is starting" "${BASH_REMATCH[1]}." "${BASH_REMATCH[@]}"
  elif [[ $line =~ .?(Completed[[:space:]]backup[[:space:]]to[^:]*)(in .*) ]]; then
    send_notify "Backup completed" "${BASH_REMATCH[1]}." "${BASH_REMATCH[@]}"
  elif [[ $line =~ .?(Starting[[:space:]]backup[[:space:]]from[^:]*)(.*) ]]; then
    send_notify "Receiving backup" "${BASH_REMATCH[1]}." "${BASH_REMATCH[@]}"
  elif [[ $line =~ .?(Completed[[:space:]]backup[[:space:]]from[^:]*)(in .*) ]]; then
    send_notify "Received backup" "${BASH_REMATCH[1]}." "${BASH_REMATCH[@]}"
  fone < <(tail -fn0 $CP_LOG)

 

Note: set UNRAID_ADDR to "172.17.42.1" and set UNRAID_PASS if your container's network is set to bridge.

 

 

2) Edit the CrashPlan container, mapping the file above to the container's service dir (e.g. /boot/custom/crashplan_notify.sh -> /etc/service/notify/run) :

 

ekvyuF9.png

 

 

3) Hit Save and you're done.

 

When you say "set UNRAID_ADDR to 172.17.42.1",  do you mean set it the address of your unraid server ?

Link to comment

 

When you say "set UNRAID_ADDR to 172.17.42.1",  do you mean set it the address of your unraid server ?

 

That's the Docker IP; obviously, you can change it with your server IP address.

 

You -can- ?  Or you should ?  My server is hosted on 192.168.1.13. Should I use that IP address ?

 

I think it will give you the same results, that's why I used "can" instead of "should".

 

Use your server's IP address and let me know if it works.

Link to comment

My container is set to HOST, not bridge, so I did just copy your complete file and changed the ip..

 

Now how would I know its working though ?

 

There's no need to cahnge the IP when you're using HOST network mode. When you change it, you must supply the webGui password too. Leave it as 127.0.0.1, it's the local IP address of your server.

 

To test, simply start a backup.

Link to comment

Thanks to gfjardim for assisting over teamviewer just now.. This really is a great addon.. !

 

You're welcome! Just to help others, the problems were:

 

1) a script error, now fixed;

 

2) DOS line endings while saving the script. In this case, my advise is to open a SSH session using Putty and paste the content using VI or NANO.

 

[]'s

Link to comment

GOAL: add notifications to CrashPlan:

 

This is very cool gfjardim!  I probably won't use it because I have multiple backup sets and I would be inundated with alerts :) but it opens some possibilities I didn't know about.

 

Question for you - is there a reason you saved the crashplan_notify.sh script to the flash drive and not the config folder on the cache drive? 

Link to comment

This is very cool gfjardim!  I probably won't use it because I have multiple backup sets and I would be inundated with alerts :) but it opens some possibilities I didn't know about.

 

Another script that will unmount the disk after server's backup using an Unassigned Devices disk:

 

#!/bin/bash

# Set UNRAID_ADDR to "172.17.42.1" and set UNRAID_PASS if your container's network is set to bridge.
UNRAID_ADDR="127.0.0.1" 
UNRAID_PASS=""
MOUNT="/backup"
CHANNEL="1"

#  Available Channels
#
#  1 = notify using browser-popups only;
#  2 = notify using e-mail only;
#  3 = notify using browser-popups and e-mail;
#  4 = notify using agents only;
#  5 = notify using browser-popups and agents;
#  6 = notify using e-mail and agents;
#  7 = notify using browser popups, e-mail and agents;

send_notify() {
  curl -s -d "cmd=add" \
       -d "e=${1} " \
       -d "s=${2}" \
       -d "d=${3}" \
       -d "i=normal ${CHANNEL}" \
       -u "root:${UNRAID_PASS}" "http://${UNRAID_ADDR}/webGui/include/Notify.php"
}

unassigned_umount() {
  device=$(cat /proc/mounts 2>/dev/null|grep "${MOUNT}"|grep -v 'rootfs'|cut -d' ' -f1|head -n1)
  if [[ -n $device ]]; then
    send_notify "Unassigned Devices: umounting disk '$(basename ${device})'" \
                "Unassigned Devices: the disk '$(basename ${device})' is being unmounted."
    curl -s -d "action=umount" \
         -d "device=${device}" \
         -u "root:${UNRAID_PASS}" "http://${UNRAID_ADDR}/plugins/unassigned.devices/UnassignedDevices.php"
  fi
}

CP_LOG="/config/log/history.log.0"
while read line ; do
  # unRAID's backup finished
  if [[ $line =~ .?(Completed[[:space:]]backup[[:space:]]to[^:]*)(in .*) ]]; then
    send_notify "CrashPlan: Backup completed" "${BASH_REMATCH[1]}." "${BASH_REMATCH[@]}"
    unassigned_umount
  fi
done < <(tail -fn0 $CP_LOG)

Link to comment

 

Question for you - is there a reason you saved the crashplan_notify.sh script to the flash drive and not the config folder on the cache drive?

 

Mainly two: short file path and in the flash filesystem all scripts have the execution bit already set.

 

Ah, trying to simplify support.  Nice :)

Link to comment

Hi gfjardim,

I didn't know where else to say thank you so I'm dropping it here. Thank you. I've been using your plugin and docker for a year or two now and it's worked great. I've been down for the past 30 days or so but mostly because I haven't had time to work on updating / fixing whatever broke. The new Crashplan + Desktop combo is super sweet and got me back up and running in no time. I removed my non-functioning dockers, installed your lastest version and 10 minutes later I've adopted my old backup and am synchronizing changes. Awesome work.

-Ross

Link to comment

So - I don't think this is a crashplan docker problem - but does anybody know how to identify where this x11vnc process came from so I can kill it and let crashplan run in host mode?

Is there a way to identify what processes are being used by each container?

 

Can you stop your other dockers and vms one at a time until this one starts without error?  Curious to know what the conflict is, hopefully there is a work around.

 

Figured out the conflict - but I don't know how to resolve..  Sparklyballs' MythTv container is where the VNC server is coming from. 

http://lime-technology.com/forum/index.php?topic=41110.0

I'm able to RDP into that container on port 3389 to a desktop of some sort, I don't know if there is a VNC component to that connection.  MythTv is currently in host networking and is working well, and I hate to break it if it's working. But I'll try changing it to bridge and mapping in all the ports (the MythTv dockerfile has this:EXPOSE 3310 3389 5000/udp 5002/udp 5004/udp 6543 6544 6760 65001 65001/udp )

 

I'm not sure if MythTv will have a similar issue of detecting the wrong IP. I know there's something in the MythTv backend setup where you set an IP - This will have to be verified.

 

I'm also going to try crashplan in bridged mode with the ports and see what happens.  I'll watch my router and see where the traffic goes. My original comment

reports the IP as the 172.something of the bridged network, causing it to use the external/public address since it thinks it isn't local
is an assumption, not based on any facts as of yet..

 

Or if somebody knows how to contact sparklyballs and ask him if vnc can be changed/removed, that would help too.

 

Any progress on working around this conflict?  ---EDIT--- Turns out I can just stop Mythtv docker (when it's not being used) then the WEBUI for Crashplan works.  When done config, restart Mythtv.  I'm pretty sure crashplan continues to run, it's just the UI that's having the conflict with Mythtv.

 

thanks!

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.