Code Monkey home page Code Monkey logo

idrive's Introduction

idrive

IDrive Backup Docker image

Docker Hub: https://hub.docker.com/r/renofischa/idrive

IDrive services persist, so no need to relogin after each restart of the container.
It also works in TrueNAS SCALE and on unRAID. Configuration examples are below.

Requirements

  • Docker installed
  • IDrive account

docker-compose example

services:
  idrive:
    container_name: idrive
    image: renofischa/idrive:latest
    restart: unless-stopped
    volumes:
      - config:/opt/IDriveForLinux/idriveIt
      - files:/mnt/files
      - $BACKUPDIR:/mnt/backup:ro
    environment:
      - TZ=$TZ
      
volumes:
  config:
  dependencies:
  files:
  • volumes config and files are necessary for persisting account settings and IDrive services.
  • $BACKUPDIR points to the local path you need to backup
  • Optional timezone environment variable, default is set to Europe/Vienna in dockerfile

TrueNAS SCALE example

click on Apps -> Launch Docker image

  • Image repository: renofischa/idrive image
  • Optional timezone environment variable image
  • Storage:
    • configure your local path you need to backup as a Host Path Volume:
      You have to mount each Dataset you want to back up in a seperate directory
      image
    • configure volumes for persisting files:
      config:/opt/IDriveForLinux/idriveIt
      files:/mnt/files
      
      image
  • Update Strategy: Kill existing pods before creating new ones

leave everything else on default

unRAID example

Save the following template as My-iDrive.xml under your boot usb drive in /Config/Plugins/dockerMan/templates-user/

<?xml version="1.0"?><Container version="2">
<Name>iDrive</Name>  
<Repository>renofischa/idrive</Repository>  
<Registry>https://hub.docker.com/r/renofischa/idrive</Registry>  
<Network>host</Network>  
<MyIP/>  
<Shell>sh</Shell>
<Privileged>false</Privileged>
<Support/>
<Project/>
<Overview/>
<Category/>
<WebUI/>
<TemplateURL/>
<Icon>https://static.idriveonlinebackup.com/source/images/favicon.ico</Icon>
<ExtraParams/>
<PostArgs/>
<CPUset/>  
<DateInstalled>1676085032</DateInstalled>  
<DonateText/>  <DonateLink/>  
<Config Name="Host Path 1" Target="/opt/IDriveForLinux/idriveIt" Default="" Mode="rw" Description="" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/idrive/idriveIt</Config>  
<Config Name="Host Path 2" Target="/home/backup" Default="" Mode="ro" Description="" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/backups/</Config>  
<Config Name="Host Key 1" Target="TZ" Default="" Mode="" Description="" Type="Variable" Display="always" Required="false" Mask="false">America/New_York</Config>
<Config Name="Host Path 3" Target="/mnt/files" Default="" Mode="rw" Description="" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/idrive/files</Config>
</Container>

Configuration after first start

Configure your IDrive account after first start.

  • Exec into container
  • Run ./account_setting.pl
  • Login with your account details and configure other basic settings. Important is your Backup location.
  • Now you should see your container in your IDrive dashboard.

Update v2 to v3

In Version 3 idrive for Linux switched to a Bin package-based Installer.

  • Container tag latest now contains v3
  • steps to update a container to the new Version:
    • change mount path of volume config to /opt/IDriveForLinux/idriveIt
    • remove volume dependencies
    • Should look like this in docker-compose
    services:
      idrive:
        container_name: idrive
        image: renofischa/idrive:latest
        restart: unless-stopped
        volumes:
          - config:/opt/IDriveForLinux/idriveIt
          - files:/mnt/files
          - $BACKUPDIR:/mnt/backup:ro
        environment:
          - TZ=$TZ
          
    volumes:
      config:
      files:
    
    • Exec into container
    • Run ./idrive --account-setting
    • Login again with your account details.
    • At this question, you can enter 3 to exit:
      Do you want to:
      
      1) Reconfigure your account freshly
      2) Edit your account details
      3) Exit
      
    • Settings from v2 should still be there. Scheduled Jobs must be configured again.

idrive's People

Contributors

renofischa avatar

Stargazers

Mathieu Clement avatar  avatar Martin Bradley avatar Milan George avatar Andres Vidal avatar Prabir Shrestha avatar Pauli Jokela avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

lunksnee robac

idrive's Issues

Your backupset is empty: Did I miss a step?

Followed the instructions and mounted my drives to /mnt/backup. Files are visible in this folder.

When I manually start the backup script it complains that "Your backupset is empty."

Was I supposed to modify the backup settings to backup the contents of /mnt/backup? Or is that automatically set up for me?

How to update?

I'm having some issues where I can login, but the backup client never shows up in the dashboard, thus, I can never back any files up. An obvious thing to check is if I'm running the latest version of idrive, which I'm clearly not.

It appears that this docker image is running 2.37 and the latest version for linux is 3.2.0.

I'm meant to be able to run from /opt/IDriveForLinux/bin
./idrive -C to check for an update

But I can't seem to find the idrive executable anywhere.

I've also tried restarting the container, checking I'm running latest etc, but no luck.

(This is on TrueNAS scale BTW, not that that should matter).

Any help would be appreciated.

Many thanks,

Marshalleq

{Documentation} Unraid Community Apps/Docker Template

Here is a sample template that can be used in Unraid. Can be published with Unraid for community apps otherwise save as My-iDrive.xml under your boot usb drive in /Config/Plugins/dockerMan/templates-user/

<?xml version="1.0"?><Container version="2">
<Name>iDrive</Name>  
<Repository>renofischa/idrive</Repository>  
<Registry>https://hub.docker.com/r/renofischa/idrive</Registry>  
<Network>host</Network>  
<MyIP/>  
<Shell>sh</Shell>
<Privileged>false</Privileged>
<Support/>
<Project/>
<Overview/>
<Category/>
<WebUI/>
<TemplateURL/>
<Icon>https://static.idriveonlinebackup.com/source/images/favicon.ico</Icon>
<ExtraParams/>
<PostArgs/>
<CPUset/>  
<DateInstalled>1676085032</DateInstalled>  
<DonateText/>  <DonateLink/>  
<Requires>/work/IDriveForLinux/scripts/Idrivelib/dependencies</Requires>  
<Config Name="Host Path 1" Target="/work/IDriveForLinux/idriveIt" Default="" Mode="rw" Description="" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/idrive/idriveIt</Config>  
<Config Name="Host Path 2" Target="/home/backup" Default="" Mode="ro" Description="" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/backups/</Config>  
<Config Name="Host Key 1" Target="TZ" Default="" Mode="" Description="" Type="Variable" Display="always" Required="false" Mask="false">America/New_York</Config>
<Config Name="Host Path 3" Target="/work/IDriveForLinux/scripts/Idrivelib/dependencies" Default="" Mode="rw" Description="" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/idrive/dependencies</Config>  
<Config Name="Host Path 4" Target="/mnt/files" Default="" Mode="rw" Description="" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/idrive/files</Config>
</Container>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.