Skip to content

Latest commit

 

History

146 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub package.json prod dependency version Release Architecture GitHub Actions Workflow Status Docker Pulls GitHub Container Registry GitHub License

Internxt CLI Docker Image

This project provides a Docker image for running the Internxt CLI and launching a WebDAV server backed by your Internxt cloud storage. It is designed for secure, automated deployments and supports two-factor authentication (TOTP), non-root execution, and flexible configuration via environment variables or secret files.


Table of Contents


Features

  • Secure login to Internxt with email, password, and optional TOTP (2FA).
  • Automatic WebDAV server activation if no command is passed.
  • Flexible environment variable management (direct or via secret files).
  • Run any Internxt CLI command inside the container.
  • Non-root user execution for improved security.
  • Configurable WebDAV protocol, port, and logging level.
  • Configurable TimeZone.
  • Multi-arch builds for amd64 , arm64 and armv7.

Prerequisites


Environment Variables

You can configure the container using the following environment variables:

Variable Description Required Default
INTERNXT_EMAIL Internxt login email. Yes
INTERNXT_PASSWORD Internxt login password. Yes
INTERNXT_TOTP_CODE TOTP code for two-factor authentication. No
INTERNXT_TOTP_SECRET TOTP secret for 2FA (INTERNXT_TOTP_CODE have priority) No
WEBDAV_HOST Listening host for WebDAV No 127.0.0.1
WEBDAV_PROTO Protocol for WebDAV (http or https). No https
WEBDAV_PORT WebDAV listening port. No 3005
WEBDAV_LOGS Log level (error or debug). No error
PUID User ID for running processes. No 1000
PGID Group ID for running processes. No 1000
TZ TimeZone for tzdata No Etc/UTC

Tip: For any INTERNXT_* variable above, you can use a corresponding *_FILE variable to load its value from a file (useful for secrets).


Docker Images

Registry Address ( tag : latest )
Docker Hub docker pull debben80/internxt-cli:latest
GitHub Container Registry docker pull ghcr.io/debben80/internxt-cli:latest

Usage

Start the WebDAV Server

docker run -d \
  -e INTERNXT_EMAIL=my@email.com \
  -e INTERNXT_PASSWORD=mypassword \
  -e INTERNXT_TOTP_SECRET=myTOTPsecret \
  debben80/internxt-cli

Run Internxt CLI Commands

You can run any Internxt CLI command by passing it as arguments:

docker run --rm \
  -e INTERNXT_EMAIL=my@email.com \
  -e INTERNXT_PASSWORD=mypassword \
  -e INTERNXT_TOTP_CODE=myTOTPcode \
  debben80/internxt-cli internxt list

Using Secrets

To use secrets, mount files and set the corresponding *_FILE environment variable:

docker run -d \
  -e INTERNXT_EMAIL_FILE=/run/secrets/email \
  -e INTERNXT_PASSWORD_FILE=/run/secrets/password \
  -v /run/secrets:/run/secrets:ro \
  debben80/internxt-cli

Docker Compose Example

services:
  internxt-webdav:
    image: debben80/internxt-cli:latest
    environment:
      INTERNXT_EMAIL: your@email.com
      INTERNXT_PASSWORD: yourpassword
    ports:
      - "3005:3005"
    restart: unless-stopped

Security Notes

  • The container runs as a non-root user (appuser).
  • Secrets can be injected via files for improved security.
  • Always use secure passwords and enable TOTP if possible.

Development


References


License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Internxt CLI Docker Image

Topics

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages