Dockerized iCloud drive

Overview

iCloud-drive-docker Build Status codecov Docker Join the chat at https://gitter.im/mandarons/iCloud-drive-docker Buy Me A Coffee

iCloud-drive-docker is a simple iCloud drive client in Docker environment. It uses pyiCloud python library to interact with iCloud drive server.

Primary use case of iCloud-drive-docker is to periodically sync wanted or all of your iCloud drive contents, using your iCloud username and password.

Installation

Installation using Docker Hub

docker run --name icloud-drive -v ${PWD}/drive:/app/drive mandarons/icloud-drive 

Installation using docker-compose

version: "3.4"
services:
  icloud-drive:
    image: mandarons/icloud-drive
    container_name: icloud-drive
    restart: unless-stopped
    volumes:
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
      - ${PWD}/icloud-drive/config.yaml:/app/config.yaml
      - ${PWD}/icloud-drive/drive:/app/drive

Authentication (required after container creation)

docker exec -it icloud-drive /bin/sh -c "icloud --username="

Follow the steps to authenticate.

Sample Configuration File

credentials:
  # iCloud drive username: required
  username: [email protected]
  # iCloud drive password: optional
  password:
settings:
  # Auto-sync interval in seconds: optional, default: 1800
  sync_interval: 1800
  # Destination to sync: required
  destination: './drive'
  # Flag if remove files/folders that are present locally but not on iCloud server: optional, default: false
  remove_obsolete: false
  # Verbosity of messages: optional, default: false
  verbose: false
filters:
  # Paths to be 'included' in syncing iCloud drive content
  folders:
    - Documents
  file_extensions:
    # File extensions to be included in syncing iCloud drive content
    - pdf
    - png
    - jpg
    - jpeg

Note: On every sync, this client iterates all the files and folders. Depending on number of files in your iCloud drive, syncing can take longer.

Comments
  • Some already downloaded files are downloading again on every pass...

    Some already downloaded files are downloading again on every pass...

    First things first... Thanks so much @mandarons, this project is what I've looking for since years... I appreciate so much your efforts on this...

    Describe the bug Some files are downloaded on every pass, even if the file already exists and no changes have occurred on it... Usually this issue is related to MacOS packages, which are downloaded as a file, instead of as a directory, but I have also noticed that it applies to many photos...

    To Reproduce In my case, this behavior seems to be always the same, although I'm not sure you know which files it occurs with and which it doesn't.

    Expected behavior I expect not to download any file if it is already downloaded and it has not changed...

    Screenshots You can see some examples on "icloud.log" where unmodified files are downloaded several times (PHOTOS sync_interval is lower than DRIVE one):

    /app # more icloud.log |grep LOGO-Contacto
    2022-02-26 17:02:56,650 :: INFO :: root :: sync_drive.py :: 90 :: Downloading /app/icloud/drive/Pixelmator/LOGO-Contacto.pxm ...
    2022-02-27 10:33:47,321 :: INFO :: root :: sync_drive.py :: 90 :: Downloading /app/icloud/drive/Pixelmator/LOGO-Contacto.pxm ...
    2022-02-28 04:38:14,972 :: INFO :: root :: sync_drive.py :: 90 :: Downloading /app/icloud/drive/Pixelmator/LOGO-Contacto.pxm ...
    /app # ls -la /app/icloud/drive/Pixelmator/LOGO-Contacto.pxm 
    ----------    1 root     root        899758 Sep 21  2018 /app/icloud/drive/Pixelmator/LOGO-Contacto.pxm
    
    /app # more icloud.log |grep "Imagen 175.JPG"
    2022-02-26 23:20:18,431 :: INFO :: root :: sync_photos.py :: 37 :: Downloading /app/icloud/photos/all/Imagen 175.JPG ...
    2022-02-26 23:47:35,904 :: INFO :: root :: sync_photos.py :: 37 :: Downloading /app/icloud/photos/all/Imagen 175.JPG ...
    2022-02-27 00:59:13,071 :: INFO :: root :: sync_photos.py :: 37 :: Downloading /app/icloud/photos/all/Imagen 175.JPG ...
    2022-02-27 17:27:57,205 :: INFO :: root :: sync_photos.py :: 37 :: Downloading /app/icloud/photos/all/Imagen 175.JPG ...
    2022-02-27 17:50:31,021 :: INFO :: root :: sync_photos.py :: 37 :: Downloading /app/icloud/photos/all/Imagen 175.JPG ...
    2022-02-27 18:41:28,510 :: INFO :: root :: sync_photos.py :: 37 :: Downloading /app/icloud/photos/all/Imagen 175.JPG ...
    2022-02-28 10:42:34,244 :: INFO :: root :: sync_photos.py :: 37 :: Downloading /app/icloud/photos/all/Imagen 175.JPG ...
    2022-02-28 11:05:29,406 :: INFO :: root :: sync_photos.py :: 37 :: Downloading /app/icloud/photos/all/Imagen 175.JPG ...
    2022-02-28 11:56:30,420 :: INFO :: root :: sync_photos.py :: 37 :: Downloading /app/icloud/photos/all/Imagen 175.JPG ...
    /app # ls -la "/app/icloud/photos/all/Imagen 175.JPG"
    ----------    1 root     root        735560 Mar 13  2011 /app/icloud/photos/all/Imagen 175.JPG
    

    Configuration My config YAML is:

    app:
      logger:
        level: "info"
        filename: "icloud.log"
      credentials:
        username: "MY-ID"
        retry_login_interval: 600
      root: "icloud"
      smtp:
    drive:
      destination: "drive"
      remove_obsolete: true
      sync_interval: 3000
      filters:
        folders:
        file_extensions:
    photos:
      destination: "photos"
      remove_obsolete: true
      sync_interval: 300
      filters:
        albums:
        file_sizes:
          - "original"
    
    bug 
    opened by andressoler 35
  • [BUG] mounting error

    [BUG] mounting error

    Describe the bug

    -v '/mnt/user/appdata/icloud-drive-sync/config.yaml':'/app/config.yaml':'rw' -v '/mnt/user/icloud-drive-sync/':'/app/icloud/':'rw' --restart always 'mandarons/icloud-drive'
    63a2034e9070c6f14422ee29112f6ca48ea8d28146184a4c26d01d94866301da
    docker: Error response from daemon: failed to create shim: OCI runtime create failed: container_linux.go:380: starting container process caused: process_linux.go:545: container init caused: rootfs_linux.go:75: mounting "/mnt/user/appdata/icloud-drive-sync/config.yaml" to rootfs at "/app/config.yaml" caused: mount through procfd: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.
    

    To Reproduce It appears on Unraid

    Screenshots Capture d’écran 2022-08-16 à 23 05 27

    bug 
    opened by isaaccs 20
  • [BUG] Crash with KeyError: 'data_token'

    [BUG] Crash with KeyError: 'data_token'

    I tried to use newest version published and successfully authenticated and started downloading all files in Documents folder, then suddenly icloud crashed on sync:

    icloud-drive    | No changes detected. Skipping the file /app/drive/Documents/for_blog_post/Figure_1.png
    icloud-drive    | No changes detected. Skipping the file /app/drive/Documents/Foundation Ontologies for Distributed Multi-Agent systems/Screenshot 2020-02-11 at 09.55.18.png
    icloud-drive    | No changes detected. Skipping the file /app/drive/Documents/Foundation Ontologies for Distributed Multi-Agent systems/Screenshot 2020-02-11 at 10.00.59.png
    icloud-drive    | No changes detected. Skipping the file /app/drive/Documents/Foundation Ontologies for Distributed Multi-Agent systems/Screenshot 2020-02-11 at 10.05.13.png
    icloud-drive    | No changes detected. Skipping the file /app/drive/Documents/Foundation Ontologies for Distributed Multi-Agent systems/Screenshot 2020-02-11 at 10.10.45.png
    icloud-drive    | No changes detected. Skipping the file /app/drive/Documents/Foundation Ontologies for Distributed Multi-Agent systems/Screenshot 2020-02-11 at 10.22.21.png
    icloud-drive    | No changes detected. Skipping the file /app/drive/Documents/Foundation Ontologies for Distributed Multi-Agent systems/Screenshot 2020-02-11 at 10.26.28.png
    icloud-drive    | No changes detected. Skipping the file /app/drive/Documents/Foundation Ontologies for Distributed Multi-Agent systems/Screenshot 2020-02-11 at 10.34.40.png
    icloud-drive    | Downloading /app/drive/Documents/Foundation Ontologies for Distributed Multi-Agent systems.md ...
    icloud-drive    | Downloading /app/drive/Documents/Foundation Ontologies for Distributed Multi-Agent systems.textbundle ...
    icloud-drive    | Traceback (most recent call last):
    icloud-drive    |   File "/app/./src/main.py", line 6, in <module>
    icloud-drive    |     sync.sync_drive()
    icloud-drive    |   File "/app/src/sync.py", line 159, in sync_drive
    icloud-drive    |     sync_directory(drive=api.drive, destination_path=destination_path, root=destination_path,
    icloud-drive    |   File "/app/src/sync.py", line 136, in sync_directory
    icloud-drive    |     files.update(sync_directory(drive=item, destination_path=new_folder, items=item.dir(), root=root,
    icloud-drive    |   File "/app/src/sync.py", line 141, in sync_directory
    icloud-drive    |     process_file(item=item, destination_path=destination_path,
    icloud-drive    |   File "/app/src/sync.py", line 102, in process_file
    icloud-drive    |     download_file(item=item, local_file=local_file, verbose=verbose)
    icloud-drive    |   File "/app/src/sync.py", line 82, in download_file
    icloud-drive    |     with item.open(stream=True) as response:
    icloud-drive    |   File "/usr/local/lib/python3.9/site-packages/pyicloud/services/drive.py", line 270, in open
    icloud-drive    |     return self.connection.get_file(self.data["docwsid"], **kwargs)
    icloud-drive    |   File "/usr/local/lib/python3.9/site-packages/pyicloud/services/drive.py", line 58, in get_file
    icloud-drive    |     url = response.json()["data_token"]["url"]
    icloud-drive    | KeyError: 'data_token'
    
    bug 
    opened by AlexMikhalev 16
  • [BUG] Error during 2FA authentification

    [BUG] Error during 2FA authentification

    Describe the bug After execting the login command given in README.md

    docker exec -it icloud /bin/sh -c "icloud --username=xxxx --session-directory=/app/session_data"
    

    The following error shows:

    [email protected]:/volume1/docker/icloud-drive$ sudo docker exec -it icloud /bin/sh -c "icloud [email protected] --session-directory=/app/session_data"
    Enter iCloud password for [email protected]:
    Traceback (most recent call last):
      File "/app/venv/bin//icloud", line 8, in <module>
        sys.exit(main())
      File "/app/venv/lib/python3.9/site-packages/icloudpy/cmdline.py", line 207, in main
        api = ICloudPyService(
      File "/app/venv/lib/python3.9/site-packages/icloudpy/base.py", line 273, in __init__
        self.authenticate()
      File "/app/venv/lib/python3.9/site-packages/icloudpy/base.py", line 344, in authenticate
        self._webservices = self.data["webservices"]
    KeyError: 'webservices'
    

    To Reproduce Steps to reproduce the behavior:

    1. Execute the command above.
    2. See error

    Configuration If applicable, please share the configuration details

    docker-compose.yaml:

    version: "3.4"
    services:
      icloud:
        image: mandarons/icloud-drive
        environment:
          - PUID=1026
          - GUID=100
        env_file:
          - /volume1/docker/icloud-drive/.env.icloud
        container_name: icloud
        restart: unless-stopped
        volumes:
          - /volume1/docker/icloud-drive/config.yaml:/app/config.yaml
          - /volume2/Onedrive/icloud:/app/icloud/drive
          - /volume1/docker/icloud-drive/session_data:/app/session_data
    

    config.yaml:

    app:
      logger:
        # level - debug, info (default), warning or error
        level: "info"
        # log filename icloud.log (default)
        filename: "icloud.log"
      credentials:
        # iCloud drive username
        username: "[email protected]"
        # Retry login interval - default is 10 minutes
        retry_login_interval: 600
      # Drive destination
      root: "icloud"
      smtp:
        ...
    drive:
      destination: "drive"
      remove_obsolete: false
      sync_interval: 300
    
    bug Stale 
    opened by xiaotianxt 15
  • Hang during drive downloads

    Hang during drive downloads

    Describe the bug The sync process consistently hangs during downloading large Drive objects. The log outputs "Downloading [file name]..." but never returns or prints other output, even after waiting hours. The Docker task continues to run, however. Small files preceding the large file download fine.

    Configuration Latest commit from the Git repo. Docker version 20.10.12, build e91ed57.

    I also tried cloning the repo and adding additional lines of verbose output to identify exactly where the download hangs. The code enters the copyfileobj call on line 100 but does not return from it.

    bug help wanted Stale 
    opened by edsw 11
  • iCloud Application Folders Do Not Sync

    iCloud Application Folders Do Not Sync

    Describe the bug Application folders do not sync, root folders are created but no sub folders or files are downloaded.

    To Reproduce Steps to reproduce the behavior:

    1. For instance, a note taking app like Obsidian creates an application folder on iCloud Drive to have all your notes synced across all devices.
    2. In the configuration, comment out any and all include folder or include files so it syncs everything.
    3. Folders get created but there are no contents, empty root folder Obsidian.

    Expected behavior Should recursively download and sync all files, including application specific folders.

    Screenshots Screenshot of an iCloud Application folder, for example Obsidian: 2D107BC4-0B74-4056-A022-A8DAE1F7E7F5

    Screenshot of Docker iCloud data output folder: 4B372B31-350A-4F71-AF00-5010EC921AE6

    bug good first issue blocked-upstream 
    opened by RusticPotatoes 10
  • Fix same names of photos, save all albums, fix package with remove_obsolete

    Fix same names of photos, save all albums, fix package with remove_obsolete

    See issue 98, 99 and 100.

    It could be improved by adding hash to filename only when there's conflict.

    I skip "All albums" folder because in my case all photos belongs to (at least) one folder.

    opened by tymmej 6
  • Error when syncing

    Error when syncing

    This looks like a promising project that I would really like to get working. I installed per the readme. Getting the following error when attempting to sync:

    Traceback (most recent call last): File "/app/./src/main.py", line 6, in sync.sync() File "/app/src/sync.py", line 28, in sync config=config, photos=api.photos, verbose=verbose File "/app/venv/lib/python3.9/site-packages/icloudpy/base.py", line 578, in photos self._photos = PhotosService(service_root, self.session, self.params) File "/app/venv/lib/python3.9/site-packages/icloudpy/services/photos.py", line 147, in init request = self.session.post( File "/app/venv/lib/python3.9/site-packages/requests/sessions.py", line 577, in post return self.request('POST', url, data=data, json=json, **kwargs) File "/app/venv/lib/python3.9/site-packages/icloudpy/base.py", line 158, in request self._raise_error(code, reason) File "/app/venv/lib/python3.9/site-packages/icloudpy/base.py", line 176, in _raise_error raise api_error icloudpy.exceptions.ICloudPyServiceNotActivatedException: Please log into https://icloud.com/ to manually finish setting up your iCloud service (ZONE_NOT_FOUND)

    Any help would be greatly appreciated!

    awaiting-info Stale 
    opened by BrodyBuster 4
  • [BUG] KeyError: 'medium' in photo_exists

    [BUG] KeyError: 'medium' in photo_exists

    Describe the bug An error occurs during the process_photo routine. Other files seem to download fine.

    2022-01-24T23:39:33.858349778Z Traceback (most recent call last):
    2022-01-24T23:39:33.858359179Z   File "/app/./src/main.py", line 6, in <module>
    2022-01-24T23:39:33.858424680Z     sync.sync()
    2022-01-24T23:39:33.858433902Z   File "/app/src/sync.py", line 25, in sync
    2022-01-24T23:39:33.858492048Z     sync_photos.sync_photos(
    2022-01-24T23:39:33.858503176Z   File "/app/src/sync_photos.py", line 83, in sync_photos
    2022-01-24T23:39:33.858555230Z     sync_album(
    2022-01-24T23:39:33.858562917Z   File "/app/src/sync_photos.py", line 68, in sync_album
    2022-01-24T23:39:33.858621337Z     process_photo(photo, file_size, destination_path, verbose)
    2022-01-24T23:39:33.858634493Z   File "/app/src/sync_photos.py", line 56, in process_photo
    2022-01-24T23:39:33.858673947Z     if photo_exists(photo, file_size, photo_path, verbose=verbose):
    2022-01-24T23:39:33.858684174Z   File "/app/src/sync_photos.py", line 27, in photo_exists
    2022-01-24T23:39:33.858743616Z     remote_size = int(photo.versions[file_size]["size"])
    2022-01-24T23:39:33.858753439Z KeyError: 'medium'
    

    Configuration Standard config, with file_sizes set to original & medium.

    bug 
    opened by jeff47 4
  • [FEATURE] Ignore Files

    [FEATURE] Ignore Files

    Use case I have some projects in my iCloud documents with .git and node_module folders that i don't really need to sync.

    Describe the solution you'd like Add an ignore to the yml. Allow direct paths or asterisks eg,

    ignore:
      - */node_modules # ignore node modules
      - /projects/examples/.git # ignore specific git folder
    
    new feature good first issue Stale 
    opened by reedhaffner 3
  • [FEATURE] Optionally pass password from environment variable

    [FEATURE] Optionally pass password from environment variable

    Use case As a user, I want to pass password through environment variable ICLOUD_PASSWORD so that I don't have to enter it manually.

    Describe the solution you'd like Ability to pass password through environment variable in container

    Describe alternatives you've considered Passing through config.yaml. Generally environment variables are considered as more secure than plain-text files.

    Additional context None

    new feature 
    opened by mandarons 2
  • [BUG] Removed files from package when remove_obsolete: true

    [BUG] Removed files from package when remove_obsolete: true

    Describe the bug Files from unpacked package are deleted at end of sync.

    To Reproduce Do normal sync_drive with remove_obsolete: true

    Expected behavior Files from package are not removed

    Screenshots Screenshot_20221116_101819

    Configuration remove_obsolete: true

    Sync all folders

    bug 
    opened by tymmej 1
  • [FEATURE] Downloads photos while maintaining photo albums

    [FEATURE] Downloads photos while maintaining photo albums

    Use case I want to backup all photos but also preserve albums structure.

    Describe the solution you'd like When not providing filter and providing extra flag docker should backup photos not to all folder but according to album structure. It would be nice if docker would support nested albums as nested folders. Otherwise it can create flat folder structure replacing / with -, eg. Folder-Subfolder/[photos inside] instead of Folder/Subfolder/[photos inside].

    Describe alternatives you've considered I do not see any :(

    Additional context Photo albums are available as filters so it should be doable. Maybe if providing filter as * it should copy all?

    eg.

    if filters["albums"]:
        if filters["albums"] == ["*"]:
            for album in photos.albums:
                sync_album(
                    album=photos.albums[album],
                    destination_path=os.path.join(destination_path, album),
                    file_sizes=filters["file_sizes"],
                )
        else:
           old code path
    
    opened by tymmej 0
  • [BUG] Inifinite overwrite when photos has same names

    [BUG] Inifinite overwrite when photos has same names

    Describe the bug Photo Library can contain multiple photos with same @property filename. Eg. default names IMG_xyza.HEIC when using multiple phones.

    To Reproduce Add photos with same names to library and run docker image. You will see three things:

    1. number of downloaded files is different than in iCloud
    2. docker constantly downloads same files
    3. number of downloaded files is constant

    Expected behavior Docker downloads different files even if filenames are same. It should use @property id to differentiate photos.

    Screenshots Screenshot_20221114_111059 Configuration Backup all photos

    Additional context None

    bug good first issue 
    opened by tymmej 0
  • [FEATURE] support for parallel downloads

    [FEATURE] support for parallel downloads

    Use case As a user, I want to download the entire content of my iCloud account to have a local backup. This means, as I own a 2TB account, I have to potentially download a lot of files and pictures. Unfortunately, this tool executes the file download sequentially which causes the sync job to last weeks.

    Describe the solution you'd like I would like to enable parallel downloads of files. This would shorten the script run time and allow a more frequent sync.

    Describe alternatives you've considered I could think of having different folders with different synchronisation times, to allow frequent updates for folders with frequent changes and sporadic updates for folders I use less.

    But this solution is very cumbersome and forces me to decide beforehand which folders I want to keep synchronised more and less often.

    new feature good first issue 
    opened by Mrc527 1
  • photos extention filter

    photos extention filter

    I've tried the file extention filter on the photos part, but it doesn't seem to work. Could it be extended to that also as my wife takes a billion screenshot of "stuff" and I don't want to waste storage on these? Basically I want to filter out the png files.

    Thanks so much for this project, it is awesome.

    Cheers.

    new feature good first issue 
    opened by 4ordy 0
Releases(v1.9.1)
  • v1.9.1(Jul 24, 2022)

    What's Changed

    1. Packages are now extracted by default and unexpected re-downloading has been fixed (Fixes #76)
    2. Added support for iCloud China server iCloud.com.cn users (Fixes #78) 2.1 Added new configuration option region: <global or china> in config.yaml file 2.2 Updated documentation
    3. Added debug log messages for more information when file and photo is downloaded (#77)
    4. Corrected email body to have right docker exec command (#77)

    Full Changelog: https://github.com/mandarons/icloud-drive-docker/compare/v1.9.0...v1.9.1

    Source code(tar.gz)
    Source code(zip)
  • v1.9.0(Feb 21, 2022)

    What's Changed

    • Password as environment variable - ENV_ICLOUD_PASSWORD by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/70
    • persist session outside container by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/71
    • Default log level is now info, upgraded icloudpy==0.3.0 by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/73
    • added optional to email in smtp config by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/74
    • documentation for 1.9.0 by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/75

    Full Changelog: https://github.com/mandarons/icloud-drive-docker/compare/v1.8.1...v1.9.0

    Source code(tar.gz)
    Source code(zip)
  • v1.8.1(Feb 15, 2022)

    What's Changed

    • Introduces wait before retrying login again by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/68
    • added retry_login_interval delay when retrying missing password by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/69

    Full Changelog: https://github.com/mandarons/icloud-drive-docker/compare/v1.8.0...v1.8.1

    Source code(tar.gz)
    Source code(zip)
  • v1.8.0(Feb 14, 2022)

    What's Changed

    Features

    • Logging to file and console by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/61
    • Fixes #54 Enabled separate sync_interval for photos and drive by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/64

    Bug Fixes

    • Fixes #63 - number in folder name is not interpreted as string by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/65

    Other

    • workflow updates for requirements.txt changes by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/56
    • Tests refactored and verbose option removed by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/62

    Full Changelog: https://github.com/mandarons/icloud-drive-docker/compare/v1.7.1...v1.8.0

    Source code(tar.gz)
    Source code(zip)
  • v1.7.1(Jan 28, 2022)

    What's Changed

    • #50 Fixes bug of application failure if photo file_size is missing; by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/51
    • #52 don't download photos and drive unless explicitly specified in config.yaml by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/53
    • #11 Upgraded icloudpy to 0.2.1 by @mandarons in https://github.com/mandarons/icloud-drive-docker/pull/55

    Full Changelog: https://github.com/mandarons/icloud-drive-docker/compare/v1.7.0...v1.7.1

    Source code(tar.gz)
    Source code(zip)
  • v1.7.0(Jan 23, 2022)

  • v1.6.0(Jan 15, 2022)

  • v1.5.0(Aug 12, 2021)

    • Support for ARM architecture (linux/arm64 and linux/arm/7)
    • Heavily optimized docker images for size - going from 411.1 MB to 23.93 MB!
    • Moved CI/CD fully to GitHub Actions (internal)
    Source code(tar.gz)
    Source code(zip)
  • v1.4.0(Jul 26, 2021)

  • v1.3.0(May 25, 2021)

  • v1.2.0(Apr 17, 2021)

  • v1.1.1(Apr 9, 2021)

  • v1.1.0(Apr 3, 2021)

    Features

    • file_extensions in config file is now optional - allows syncing of all the content recursively #8
    • Fixed verbose mode not displaying all the information
    Source code(tar.gz)
    Source code(zip)
Owner
Mandar Patil
Being lazy...
Mandar Patil
Dockerized service to backup all running database containers

Docker Database Backup Dockerized service to automatically backup all of your database containers. Docker Image Tags: docker.io/jandi/database-backup

Jan Dittrich 16 Dec 31, 2022
More than 130 check plugins for Icinga and other Nagios-compatible monitoring applications. Each plugin is a standalone command line tool (written in Python) that provides a specific type of check.

Python-based Monitoring Check Plugins Collection This Enterprise Class Check Plugin Collection offers a package of more than 130 Python-based, Nagios-

Linuxfabrik 119 Dec 27, 2022
Dockerized iCloud drive

iCloud-drive-docker is a simple iCloud drive client in Docker environment. It uses pyiCloud python library to interact with iCloud

Mandar Patil 376 Jan 01, 2023
Simple, Pythonic remote execution and deployment.

Welcome to Fabric! Fabric is a high level Python (2.7, 3.4+) library designed to execute shell commands remotely over SSH, yielding useful Python obje

Fabric 13.8k Jan 06, 2023
Python IMDB Docker - A docker tutorial to containerize a python script.

Python_IMDB_Docker A docker tutorial to containerize a python script. Build the docker in the current directory: docker build -t python-imdb . Run the

Sarthak Babbar 1 Dec 30, 2021
Play Wordle from any Kubernetes cluster.

wordle-operator 🟩 ⬛ 🟩 🟨 ⬛ Play Wordle from any Kubernetes cluster. Using the power of CustomResourceDefinitions and Kubernetes Operators, now you c

Lucas Melin 1 Jan 15, 2022
Azure plugins for Feast (FEAture STore)

Feast on Azure This project provides resources to enable running a feast feature store on Azure. Feast Azure Provider The Feast Azure provider acts li

Microsoft Azure 70 Dec 31, 2022
Automate SSH in python easily!

RedExpect RedExpect makes automating remote machines over SSH very easy to do and is very fast in doing exactly what you ask of it. Based on ssh2-pyth

Red_M 19 Dec 17, 2022
A honey token manager and alert system for AWS.

SpaceSiren SpaceSiren is a honey token manager and alert system for AWS. With this fully serverless application, you can create and manage honey token

287 Nov 09, 2022
Webinar oficial Zabbix Brasil. Uma série de 4 aulas sobre API do Zabbix.

Repositório de scripts do Webinar de API do Zabbix Webinar oficial Zabbix Brasil. Uma série de 4 aulas sobre API do Zabbix. Nossos encontros [x] 04/11

Robert Silva 7 Mar 31, 2022
A basic instruction for Kubernetes setup and understanding.

A basic instruction for Kubernetes setup and understanding Module ID Module Guide - Install Kubernetes Cluster k8s-install 3 Docker Core Technology mo

648 Jan 02, 2023
Nagios status monitor for your desktop.

Nagstamon Nagstamon is a status monitor for the desktop. It connects to multiple Nagios, Icinga, Opsview, Centreon, Op5 Monitor/Ninja, Checkmk Multisi

Henri Wahl 361 Jan 05, 2023
Official Python client library for kubernetes

Kubernetes Python Client Python client for the kubernetes API. Installation From source: git clone --recursive https://github.com/kubernetes-client/py

Kubernetes Clients 5.4k Jan 02, 2023
A declarative Kubeflow Management Tool inspired by Terraform

🍭 KRSH is Alpha version, so many bugs can be reported. If you find a bug, please write an Issue and grow the project together! A declarative Kubeflow

Riiid! 128 Oct 18, 2022
Big data on k8s

# microsoft azure # https://docs.microsoft.com/en-us/cli/azure/install-azure-cli az account set --subscription [] az aks get-credentials --resource-g

Luan Moreno 22 Dec 24, 2022
Kube kombu - Running kombu consumers with support of liveness probe for kubernetes

Setup and Running Kombu consumers Steps: Install python 3.9 or greater on your s

Anmol Porwal 5 Dec 10, 2022
Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

Arie Bregman 35.1k Jan 02, 2023
Rundeck / Grafana / Prometheus / Rundeck Exporter integration demo

Rundeck / Prometheus / Grafana integration demo via Rundeck Exporter This is a demo environment that shows how to monitor a Rundeck instance using Run

Reiner 4 Oct 14, 2022
DAMPP (gui) is a Python based program to run simple webservers using MySQL, Php, Apache and PhpMyAdmin inside of Docker containers.

DAMPP (gui) is a Python based program to run simple webservers using MySQL, Php, Apache and PhpMyAdmin inside of Docker containers.

Sehan Weerasekara 1 Feb 19, 2022
Hw-ci - Hardware CD/CI and Development Container

Hardware CI & Dev Containter These containers were created for my personal hardware development projects and courses duing my undergraduate degree. Pl

Matthew Dwyer 6 Dec 25, 2022