Onedrive docker client based on https://github.com/abraunegg/onedrive running on arm64/aarch64 using an adapted version of the official amd64 docker image https://hub.docker.com/r/driveone/onedrive. The major change is using the LDC D compiler which supports ARM to the DMD one, used in the official image. And it works so here you go.
Similar to the normal installation, you need to authorize your onedrive client to sync to your onedrive account. Before you do that though you will need to create the necessary folder structure yourself with the correct permissions and ownership as they need to be assigned to the user account of the machine you will be running this on.
mkdir onedrive
mkdir onedrive/conf
mkdir onedrive/data
Afterwards you can should run the container with the interactive terminal as there is an additional step required.
docker run -it --name onedrive -v ~/onedrive/conf:/onedrive/conf -v ~/onedrive/data:/onedrive/data -e "ONEDRIVE_UID:1000" -e "ONEDRIVE_GID:1000" hvalev/onedrive-docker-arm64
You'll see a link in the terminal, which you should copy to your browser of choice. You will need to authenticate yourself, which will connect the app to your onedrive. Afterwards, the page will remain blank, but the url in your browser will change. Copy the generated id from the url back into the docker container. Finally, wait for a few files to begin syncing to ensure that all configuration files have been successfully stored. At this point you can stop or detach the container and run it using docker-compose or however you want.
version: "3.7"
services:
onedrive:
image: hvalev/onedrive-docker-arm64
container_name: onedrive
environment:
- ONEDRIVE_UID:1000
- ONEDRIVE_GID:1000
volumes:
- ~/onedrive/data:/onedrive/data
- ~/onedrive/conf:/onedrive/conf
restart: always
The docker client supports some additional parameters (such as ONEDRIVE_DOWNLOADONLY, etc), which you can find on the page of the original repository here.
You might want to build the container yourself as onedrive might add new functions, update to newer libraries etcetera. This is pretty straighforward as you only need to do the following:
docker build https://github.com/hvalev/onedrive-docker-arm64.git --tag onedrive-arm64
You'll need 2GB of RAM.
If the build does not work, look at the following potential reasons as to why that might be the case:
Content type
Image
Digest
Size
263.6 MB
Last updated
over 5 years ago
docker pull hvalev/onedrive-docker-arm64