After getting fedup with NFS being a bit flakey on my box when used between VM’s (Still not got the bottom of that) i’ve decided to move duplicati onto Rockstor itself
Running this directly on the server itself rather than as a Rock-on because quite honestly it’s going to need access to the filesystem to do it’s job properly anyway (It’s backup software after all)
Goto options and make sure allow remote access is ticked, set a password if you wish. (once done we will not need the --webservice-interface * in the future, this is needed as by default it will only allow access from the server itself which s a bit useless in rockstors case as it doesn’t have a local web-browser)
I’d suggest running duplicati server in screen in the future to stop it closing when you ssh out.
Now I just need to figure out a startup script, I usually use rc.local but I think rockstor overwrites it on reboot as the command i put in there seems to have vanished @suman can you confirm?
Rockstor doesn’t touch rc.local anymore. It uses systemd exclusively, which is recommended. I suggest you create a simple unit file that starts after rockstor-bootstrap. Look at /etc/systemd/system/smb.service or rockstor files for reference
I suggest changing this to
After=rockstor-bootstrap.service
Requires=rockstor-bootstrap.service
to ensure that (1) duplicati starts after rockstor-bootstrap and (2) only if it succeeds/activates. You need rockstor-bootstrap because that’s what ensures your Shares are properly mounted etc…
It may be worth reading the documentation to see if there are better ways to do it.
Hmm might do that but in reality it’s not that critical
My duplicati is set never to do anything for the first 5 mins after startup which means rockstor would have plenty of time to mount the shares anyway
Worst case if the share hadn’t mounted i’d backup an empty directory. I think even on the backup job where I set the shortest retention period it’s still set at least several weeks if not months. (I.e the backup DIR not mounting won’t cause me to lose data unless i let it go unnoticed for a very long time)
Save the file in /etc/systemd/system/duplicati.service
then type
systemctl enable duplicati.service
service duplicati start
service duplicati status
Redirecting to /bin/systemct
The script assumes you have Duplicati 2.x and it’s installed in /backup, you can however put it wherever you want just change the ExecStart line to point in the right place…
Don’t forget to run Duplicati manually the first time (Follow instructions in first post) as otherwise it will default to binding to localhost which isn’t a lot of use for most people since rockstor doesn’t out of the box have a graphical webbrowser and therefore you won’t be able to get to the WebUI.
@bug11 My concern with integrating / relying on duplicati is:
1 - it’s dependancy on .NET or Mono
2 - it doesn’t appear to be that actively developed, last stable was 2013 !! but 2.0 coming apparently (2016)
(2 updates to dev release in 2015-16 from web page news)
3 - has it’s own “duplicity inspired!” protocol.
I think a better bet for Rockstor integration would be something that used a well known and multi program supported protocol / lower level program such as duplicity itself, or actively maintained wrappers such as duplicity-backup GPLv3. That way one would always have duplicity compatible archives and all the freedoms that come with that.
I would vote duplicati server mode as more of a Rock-on than something to build in proper.
Just my opinion though.
I thought duplicati use to be windows only when I last saw it, has it always been open-source and cross platform?
Thanks for this thread everyone, I found it pretty useful having never heard of Duplicati before.
I have created an issue for this on our github tracker. Did a quick search on docker hub and there are a few images available. It would be nice if we can do implement this as a Rock-on, though I am not against supporting it natively. A few questions for you Duplicati and Rockstor users out there.
What are the advantages of supporting it natively versus as a Rock-on?
Where does it store metadata? in the installed location(/backup for example) ?