gogdl-ng / gogdl-ng

Self-hostable application to download files in a folder from Google Drive.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gogdl-ng

forthebadge forthebadge

GitHub license GitHub license

A self-hostable application to download files in a folder from Google Drive powered by Go.


🎯 Features

  • Google Drive v3 API based
  • With additional Firefox and Chrome extension
  • OAuth 2.0 authorization
  • Integrity checks (MD5 checksum)
  • Transfer retries
  • Hassle-free setup thanks to Docker ❤︎

📝 Requirements

  • A Google Cloud Platform project with the Drive API enabled. Guide
  • Basic docker and docker-compose knowledge.
  • The gogdl-ng browser extension.

Installation

  1. Create a config folder and create a config.toml with the following content:
title = "gogdl-ng"

[application]
# Defines the port on which the application is listening for requests.
listenPort = 3200

# Defines the location where to write the application log file.
logFilePath = "./config/gogdl-ng.log"

[queue]
# Defines the maximum capacity of the job queue.
size = 1000

# Defines how many workers can run concurrently.
maxWorkers = 2

[gdrive]
# query string which will be appended to the base query which is: "'%drive_folder_id%' in parents and"
query = "trashed=false"

[download]
# Defines how many times a failed download should be retried.
retryThreeshold = 5
  1. Copy the *.json file which you got at the end of the Google Cloud Platform project guide into the config folder. Rename it to credentials.json.
  2. Start the container once with docker run. Like this:
    docker run -i -p 3200:3200 -v /path/to/config:/config -v /path/to/downloads:/downloads legendaryb/gogdl-ng:latest
    Follow the instructions as shown in the terminal. You need to enter the authorization code. After that you should exit via pressing CTRL+C
  3. Create the docker-compose.yml file (adjust it as you need):
version: '3'

services:
  gogdl-ng:
    image: legendaryb/gogdl-ng:latest
    container_name: gogdl-ng
    volumes:
      - ./config:/config
      - ./downloads:/downloads
    ports:
      - 3200:3200
    restart: always
  1. Now you can bring the service up: docker-compose up

About

Self-hostable application to download files in a folder from Google Drive.

License:MIT License


Languages

Language:Go 98.7%Language:Dockerfile 1.3%