Duplicati a Set it and Forget it backup tool for local and remote backups of your system!

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] it's your open source advocate and i'm back with another video and today we're going to cover a great backup solution so i love to cover backup solutions when i can and i've given you guys a few in the past uh you are back up or your backup is a really good one as well but this one is called duplicati and you can see here what is talking about it says free backup software to store encrypted backups online for windows mac os and linux which is awesome this is great right so duplicates pretty cool what i'm going to do today is run it in docker and then we're going to get it set up to backup my docker folders that are on my server now you guys can kind of set this up the way that you want to you can run their own binaries everything like that and they've got a lot of information in here about what you can do with duplicati and how to run it so right here you've got download the latest and greatest version of duplicati and you've got debian ubuntu fedora red hat windows mac os windows 32-bit synology you've got a zip file you've got the source code and then of course you've got other versions for older systems so you've got a lot of options so it doesn't really matter what you're running for your operating system you've got options here now i can't say that this runs on a raspberry pi but i think it might so you might give that a shot as well if you're wondering what the interface looks like they've got some screenshots here that you can kind of check out as well they've got news and information they've got articles so they've got technical stuff basically a collection of white papers and guides on how to do things with duplicati they've got a forum so if you have questions you can jump over and ask questions at their forums here just sign up and just like any other form that you see made out of discourse their forum is the same way so you can kind of look and see it has a really good search so search for the questions before you ask make sure somebody else hasn't already asked them but it's great that they've got a form and you can jump out there and kind of ask questions as well and finally they've got the manual so right here they've got the user's manual and you can expand these things and kind of check everything out so that's pretty great i think that's that's awesome but today we're going to do this through docker i want to say thank you to all my patrons over at patreon and my subscribers on youtube thank you so much for all of your support i love doing this channel i love making this media and this content for you i hope you enjoy it as well i do post all of the videos now over at patreon after one of my patrons made the suggestion and i don't know why it didn't dawn on me before that but if you're interested in seeing them through patreon and getting notifications through patreon instead of through youtube or hoping that youtube's algorithms happens to show it to you jump over and become a supporter on patreon patreon.com i've got the links in the description and the show notes i appreciate your support thank you so much i'm going to use a docker compose file but i'm going to do it through pertainer now again if you want to do docker compose it's not difficult what you do is go into the system you want to install this on so i'm already ssh into a system and you're going to create a new file or a new folder so i have a docker folder already that i use to organize things i'm going to say cd docker i'm going to make a directory called duplicati and then i'm gonna say cd duplicati and i'm gonna create a file i'm use nano and i'm gonna call it docker hyphen compose.yml and in this file i will copy and paste the yaml that i'm going to use so there it is and really you can kind of see everything that i've already got set i've changed everything that needs to be changed and the one thing that that they have in their file is that they have puid and pg id of a thousand i'm putting this comment here that you might want to actually run this as root so you don't run into file permissions errors if you're trying to back up your docker stuff like i am if you're not trying to back up docker stuff then you just go ahead and use 1000 or whatever your user id your group id is so so don't worry about that but once you set this again you can change this left side to anything you want here on the port so if you have an open port on your host set that open port here just leave this one the same don't change it on the right i'm here where i've got home brian as the source you'd want to set up a source folder that you want to back up so make sure that you set that as your source folder and then here from the mount filesync duplicati backups this is where i'm going to store my data so i did a video on c file and i set up this file sync folder and i have a c file folder inside of that where i've got syncing going on but i want to actually back up data as well so i'm going to use this same same folder and same drive basically for backing up some data so i've got duplicati folder and then backups and that's where my data is going to be backed up at and then here this is where the config is going as well so that it's easy to find the config and kind of get everything together time zone i set to my time zone america chicago and really that's the only changes you need to make so make sure that you change this to the location where you want to have your config change this to the location where you want to have your backups make sure that that's a good path for your backups and then change this to the location that you want to have as the source directory if you're going to be doing this for docker you want to put that wherever your docker source is set the port and really everything else is ready to go you save this file with control o and then enter and then control x to exit and then to run it you would do docker hyphen compose up hyphen d enter and let that thing run and it's going to pull in duplicati and it's going to set everything up for you and you'll be ready to run now i've set this up the way you should do it in the command line i've told you exactly how to get to this point i'm going to do the exact same thing i just told you i'm just going to use the pertainer ui to do it so i'm going to jump back over to portainer if you haven't set up pertainer really you should consider it it's great so i've got here my local where i run the actual portainer instance and then i've got three different pertainer agents that i run as well so i can access all my different servers from one little web ui right here which is great i'm going to jump into this one which is the server i want to run on and i'm going to go into the stacks area i'm going to add a new stack i'm going to call this duplicati and then i'm just going to paste in that same stuff that i just showed you so we're just pasting it right into the user interface and i'll kind of scroll up and zoom that up so you can see it so same exact thing i just showed you nothing changed nothing special nothing different once you've got everything in here set the way that you want to inside of pertainer make sure you give it a name and then make sure you put in that file you're just going to scroll down here till you see the deploy button and right here you'll just click on deploy now if it doesn't let you make sure that you don't have any spaces and that you don't have any capitalized letters it should be all lowercase you can use underscores things like that just don't put any spaces in because it won't let you create the the container or the stack if you don't but then once you do that just click on do deploy the stack and then just be patient because it's going to pull down duplicati now i already had duplicati pulled down for my testing but it's going to pull it down so be patient it probably won't happen that fast it's got to pull down the image and get everything running but in my case we can see here we've got this stack called duplicati now i'm going to go over here to the containers and you'll see here we've got a container called duplication i'm just going to click on the logs here and you can scroll down in portainer and you can actually see that it says done now again from the command line if you want to see logs from a docker compose once you've run it and everything's looks like it's probably running and you've got the little done message you want to do docker hyphen compose logs dash f and then the name of your container so in this case we called it duplicati and you would hit enter and it would go and tell you what the what the status is of that i don't know if this will work since it's not running in this file it's not in this folder i read it in pertainer so this is probably not going to work it's probably going to give me an error oh no it did work look at that so it looked at it and you can see here in the command line even when i run it that way i get the same output and i can see here that it says done so when i'm finished with this i can just hit ctrl c to jump out of the out of the logs there and now we're ready to go over to our browser and open up a tab and see what duplicate looks like when it's running so we'll just open up a new tab here and we'll go to our ip address and we're going to go to 8270 and the first time you run this it's going to tell you like if this is a shared system you want to set up a password if it's just your own system then there's no need to do that so you can choose what's the best answer for you i'm going to go ahead and say yes for a password and run you through that so you can see what it looks like so we're going to check the box for password i'm going to enter a strong password here and then as we go down it says allow remote access you probably want to do this if you want to access this web interface from any other machine except the one you're running it on which i do so when you have host names with star this is basically going to allow anything to connect to this machine if you allow this access to the outside internet it's going to allow anything to connect you can instead put in host names so if i said brian dash dell dash main semicolon brian dash imac those are the only two machines now that could connect to this interface and that's the way that they make it for security reasons so feel free to do that but if you just want to allow ip access from your local network and local hosts then just take out that asterisk and leave it blank next we're going to move down and it says prevent the tray icon from automatic login that's up to you if you if you want to check that box then whenever the tray icon starts it's not going to just log in automatically you'll have to do something to to log it in pause after startup or hibernation you can pause it for a little bit after startup or hibernation just to make sure that everything's running first so you can set this to like 15 seconds to give the system time to get all the way booted up user interface settings so i am english united states and then i have the dark theme set but you can change it to the light theme i believe and this is what it looks like and i'm sorry for blinding you real quick but we're going to switch it back and then you have donation messages so you can hide those but when you click it it's going to ask you for a donation i'm sure i haven't clicked it yet but i would guess that's what it is going to do if you like this software and you use this software on a regular basis please consider donating to the project because that's what keeps open source projects going is donations if you're running a business you say you know what i'm going to use duplicati for my business go out there and give a donation throw them a little bit of money so they can keep this thing running and keep it running well for you so you've got update channels here you can pick the one that you want i'm just going to leave it on the day on the default here user statistics i'll leave it on system default and then you have some advanced options as well i'm not going to set any of these but you should go through some of these because there are some security-based options as well that you could add some more security to the system but i'm going to say okay so it's going to tell me i'm not logged in that's fine it wants me to use the password that i just set up so we're going to do that and now we're going to log in and we'll be at the main home page and i don't have any backups set up yet there's a couple of things to look at here so you can set a speed limit if you need to and you can change this number you can change megabytes kilobytes whatever and then you can check these boxes and hit ok and it'll set a speed limit you can pause the backups as well if you click on this pause button and then you've got the donate button which again is really important so if you if you decide i really love this software and i want to keep it going consider donating a little bit of money to them a dollar may not seem like a lot or may seem like a ton to you guys but if you can give a dollar that that that's one more dollar than they had before so as we go down we have settings just general settings so it says access to the user interface is the one we just went through so if you need to get back to those settings you can do that so just be aware that those are there you have about that tells you a little bit about the system and the nice thing is you've got this change log this is a really important one for me and it should be important for you anytime you're running your own software in a home lab or self-hosting make sure to check the change logs so that you understand what things have changed and what might be affected by those changes it's really important and it helps you a lot of time solve problems without having to go out and ask questions or getting frustrated because you realize oh okay they changed this here's what i need to do to go fix my side to make sure everything's working correctly here you can see libraries that they're using which is pretty cool system information is here and available and then you've got a show log so if you want to see logs you can just click on live here if you want to and we can go down and say information and you can see here it shows the server start at this time as logs accumulate you would see more things showing up here now we're not really doing anything right now so nothing to show so now we've got the big one which is add a backup now i'm going to say configure a new backup but you can import from a file if you have a backup that you've exported at some point in the past so i'm going to say next and it's going to ask us some basic information so i'm just going to call this test 1 and i'm going to give it a test backup and you have encryption options or you can turn off encryption it's up to you whether or not you're going to be needing encryption if you're if you're storing this onto a server that is not inside of your home network you should definitely probably set up encryption and use that encryption so if you leave it on aes 256 you set the password that you want to use to be able to decrypt this at the the data when it comes back and then you can continue forward if you're saving this at home and it's just on a server that you're keeping at home that's not exposed to the internet you can choose no encryption and the passwords go away and we'll click next so it says local folder or drive ftp so what is a storage type like where do i want to store this stuff you can set this up for s3 rs3 compatible openstack object storage sftp webdav there's some proprietary stuff down here as well so you've got azure b2 cloud box dropbox google cloud google drive i mean just so many options so you should really kind of look through these different options that they have but you can also just choose a local folder or drive now we set this up earlier so this is backups so if you remember from our file where we set up our stack the mapped folder on the container was backups and that's what we want to look at so we want to make sure that we click that that is our as our location now once we've got backup selected we can test the connection and it says okay if we need credentials we can put them in here but we don't so we're going to go to next now it says source data where do we want to actually pull the backup from because we mapped this in docker you'll see it's a little confusing it says source data right here but if we expand this there's nothing there what we want to do is expand computer we want to scroll down and we want to find the source folder and then right here here's my home folder and i can see that i've got the docker stuff here and i've got my my media stuff here for for my um sonar radar those kind of things here's the one that i want to back up so i'm going to select docker now you can check the box you don't have to select it that way you can check up both check both boxes but i'll check docker here and it says add a path directly so if you know the direct path to get here inside of the container you can also do that but this is what i'm exposing to the container so this is what i need to set up and that's really under computer and then source and then docker so we've got filters if you need to add filters you can do that so if we click on add filters you'll see exclude things with an expression so we could exclude certain types of files or certain certain certain folders extensions and so on so if you want to exclude certain things from your backups you can and you can just add multiple filters to do that let's see we can delete that with the x out here and then you have exclude so you can actually say exclude hidden files exclude system files temporary files and so on so you're not backing up a bunch of stuff that you don't need so maybe temporary files is a good one system files i don't think i need system files but it may consider system files something different because it's docker so it may be valid in the case that you're backing up docker just to leave everything alone and then files larger than a certain size so if you don't want to back up a bunch of media files here you're backing them up somewhere else then you might want to exclude those things so you can do that that way as well with exclude once you're done setting up all of your your source information here we're going to hit next and then we're going to set our schedule so we're basically going to say next time to run 1pm 11 4 2021 that would be fine i would prefer to do it you know at the night time so i think i would change this to am and then run again every one day so basically every day you can set that to every other day and then a loud days you can say i don't want it to run on saturdays or sundays or you can say i don't want to run on tuesdays thursdays and saturdays whatever you want there so you can set up your schedule for how this is going to run and it's basically automatically run the backups so that's pretty cool so i'm going to click on next and remote volume size so how much do i want to allow this to become the backups will be will be split up into multiple volumes multiple files called volumes so it says here you can set the maximum size that these things should be so we'll just keep the default of 50 megabytes and it says keep all backup so this is backup retention so for me it says delete backups that are older than keep a specific number of backups smart backup retention which i kind of like that concept and then custom backup retention so we're going to say smart backup retention and it says overtime backups will be deleted automatically there will remain one backup for each of the last seven days each of the last four weeks and each of the last 12 months so you're going to get quite a few versions of what's going on in backups that's pretty cool with the smart one i'm more of a you know what i don't need all of that just keep a specific number of backups and i'm going to tell it to keep the last three because if something goes wrong hopefully i catch it before that three days is up and i can go back if i need to get something and then there's advanced options again on every page so you can always select these advanced options if you need to and once we're done with that i'm going to say go so it's slowly backing things up and you can see what it's doing up here in the top bar and you can see here in the bar as well how it's going so it gives you the progress of each file down here and this is the overall progress up at the top so you can kind of understand where things are happening and what's going on with it so i think this is really cool it's a great program it's very very nice to be able to back up your server this way and your docker information this way mapping out the things that you want to back up in the storage you should really think about your storage setup so this is actually going from an internal drive to an external drive on that server now a lot of people say that's not a good backup that's true i need another backup that goes to a separate machine and then i need another backup that goes to an off-site machine those are all things that you can get set up with various tools um duplicati is a great one just to use and again you saw that you can set up backups to other storage locations off-site you can use webdav you can use all kinds of different things to set that up i'm just using that as an option to set up storage on a local machine on a separate drive but i can use those other options to set up my entire backup plan which i think is great so this is duplicati you can see how it's working it's going to start doing backups every day for me of these docker folders which is really important i want to keep this data i want to keep this information so it's very important to me that i'm able to bring this back in a hurry if i need to it's a really cool tool i hope you guys will get out there and check it out if you enjoyed this video like subscribe tell your friends about it so they can come along the journey with us and i'll talk to you next time [Music] you
Info
Channel: Awesome Open Source
Views: 4,583
Rating: undefined out of 5
Keywords: open, source, opensource, open-source, self, hosted, selfhosted, self-hosted, free, libre, software, server, web, internet, browser, linux, mac, os x, windows, microsoft, ios, pi, raspberry, desktop, vps, tutorial, how to, setup, installation, instructions, cli, command line, terminal, interface, open source software, open source news, open source projects, urbackup, norton ghost, image, backup, duplicacy, duplicati, local, remote, remote backup, local backup, cross platform, fbackup, s3, ftp, sftp, webdav, online, dropbox, box
Id: N1NRvg4KaDE
Channel Id: undefined
Length: 19min 32sec (1172 seconds)
Published: Tue Dec 07 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.