Sign inSign up

debben80/internxt-cli

By debben80

•Updated 22 days ago

Image
0

2.5K

debben80/internxt-cli repository overview

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:

VariableDescriptionRequiredDefault
INTERNXT_EMAILInternxt login email.Yes
INTERNXT_PASSWORDInternxt login password.Yes
INTERNXT_TOTP_CODETOTP code for two-factor authentication.No
INTERNXT_TOTP_SECRETTOTP secret for 2FA (INTERNXT_TOTP_CODE have priority)No
WEBDAV_HOSTListening host for WebDAVNo127.0.0.1
WEBDAV_PROTOProtocol for WebDAV (http or https).Nohttps
WEBDAV_PORTWebDAV listening port.No3005
WEBDAV_LOGSLog level (error or debug).Noerror
PUIDUser ID for running processes.No1000
PGIDGroup ID for running processes.No1000
TZTimeZone for tzdataNoEtc/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
RegistryAddress ( tag : latest )
Docker Hubdocker pull debben80/internxt-cli:latest
GitHub Container Registrydocker pull ghcr.io/debben80/internxt-cli:latest

⁠Usage

⁠Start the WebDAV Server
docker run -d \
  -e [email protected] \
  -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 [email protected] \
  -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: [email protected]
      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.

Tag summary

Content type

Image

Digest

sha256:44297d7bd…

Size

67.5 MB

Last updated

22 days ago

docker pull debben80/internxt-cli