How to Backup and Restore App Data Folders in InternetIncome: Complete Guide

InternetIncome stores all persistent device IDs, node IDs, and application state in specific backup folders and text files defined in internetIncome.sh, which you can archive using standard tar commands and restore by extracting them back to the repository root before running --start.

The InternetIncome script by engageub orchestrates multiple passive income Docker containers, each requiring persistent storage for unique identifiers and profile data. Understanding how to backup and restore these app data folders is essential for migrating hosts, recovering from system failures, or preventing the loss of established node reputations. This guide explains the backup architecture implemented in internetIncome.sh and provides production-ready commands to safeguard your income streams.

Where InternetIncome Stores Persistent Data

InternetIncome maintains two distinct categories of persistent state in the repository root directory. These are declared in arrays near the top of internetIncome.sh (lines 62–63) and mounted as Docker bind-volumes when containers launch.

Backup folders contain full application data directories that are written to continuously:

  • titan-data/ – Titan device profiles and edge node configuration
  • network3-data/ – Network3 node identification and session data
  • bitping-data/ – Bitping application state and credentials
  • urnetwork-data/ – URnetwork persistent volumes
  • traffmonetizerdata/ – Traffmonetizer browser profiles and identifiers
  • mysterium-data/ – Mysterium node identity and keystore files

Backup files are simple text files storing device or node IDs for apps that authenticate via registration tokens:

When the script launches containers, it mounts these paths directly into the Docker containers. For example, in the Titan container setup, the script executes:

titan_volume="--mount type=bind,source=$PWD/$titan_data_folder/data$i,target=/root/.titanedge"

This bind-mount architecture ensures that all persistent state remains on the host filesystem, making backup operations as simple as copying files.

How to Backup InternetIncome App Data

Manual Backup Using tar

To create a complete snapshot of all recoverable data, navigate to the InternetIncome repository root and archive the backup arrays' contents:

cd /path/to/internetincome
tar -czvf internet_income_backup_$(date +%F).tar.gz \
  earnapp.txt proxyrack.txt \
  titan-data network3-data bitping-data \
  urnetwork-data traffmonetizerdata mysterium-data

This command packages every directory listed in back_up_folders and every file listed in back_up_files into a compressed tarball with a date stamp.

Automated Backup Script

For scheduled backups, use this idempotent bash script that dynamically references the same items defined in internetIncome.sh:

#!/usr/bin/env bash

# backup_internet_income.sh

# Backs up all persistent data from InternetIncome

SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$SCRIPT_DIR" || exit 1

BACKUP_ITEMS=(
  earnapp.txt proxyrack.txt
  titan-data network3-data bitping-data
  urnetwork-data traffmonetizerdata mysterium-data
)

ARCHIVE="internet_income_$(date +%Y%m%d_%H%M%S).tar.gz"

if tar -czvf "$ARCHIVE" "${BACKUP_ITEMS[@]}"; then
    echo "Backup successful: $ARCHIVE ($(stat -c%s "$ARCHIVE") bytes)"
else
    echo "Backup failed" >&2
    exit 1
fi

Store this archive off-site using scp, rsync, or cloud storage to ensure recovery capability during host migration or hardware failure.

How to Restore InternetIncome Data

Restoring app data requires extracting your backup archive into the InternetIncome repository root before executing the start command. The containers will automatically pick up the restored identities and resume operation with existing node reputations.

Full Restore from Archive

To restore all applications simultaneously:

cd /path/to/internetincome
tar -xzvf internet_income_backup_2024-03-15.tar.gz
sudo bash internetIncome.sh --start

The extraction recreates the exact folder and file layout the script expects. When --start executes, Docker mounts the restored paths as volumes, preserving your device IDs and wallet configurations.

Selective App Restoration

If you only need to restore a specific application's data—perhaps after accidentally deleting a single container's volume—target that specific folder:


# Restore only Titan data

tar -xzvf titan_backup.tar.gz titan-data/
sudo bash internetIncome.sh --start

This approach minimizes disruption to other income streams that are operating normally.

Deleting Backup Data with --deleteBackup

When you need to purge all persistent identifiers and start completely fresh, InternetIncome provides a built-in deletion mechanism. The --deleteBackup flag (implemented in internetIncome.sh lines 1314–1358) removes every item enumerated in back_up_files and back_up_folders.

Execute the deletion command:

sudo bash internetIncome.sh --deleteBackup

The script first verifies that no Docker containers are currently running to prevent data corruption, then deletes the folders and files. This is useful when retiring old node identities or troubleshooting registration conflicts.

Summary

  • InternetIncome persists all critical data in back_up_folders (six app directories) and back_up_files (two ID text files) defined at lines 62–63 of internetIncome.sh.
  • Backup operations use standard tar commands to archive these specific paths; no database dumps or complex exports are required.
  • Restore operations simply extract archives to the repository root before running sudo bash internetIncome.sh --start.
  • The --deleteBackup flag safely purges all persistent data after verifying container shutdown, as implemented at lines 1314–1358.
  • Docker bind-mounts ensure restored data immediately becomes available to containers without additional configuration steps.

Frequently Asked Questions

What specific files and folders must I backup in InternetIncome?

You must backup the six data directories (titan-data, network3-data, bitping-data, urnetwork-data, traffmonetizerdata, mysterium-data) and two identifier files (earnapp.txt, proxyrack.txt). These correspond exactly to the back_up_folders and back_up_files arrays declared in internetIncome.sh at lines 62–63. Missing any of these will result in new device registration and loss of accumulated reputation or earnings history.

Can I backup individual applications instead of all data?

Yes. While a full backup captures all income streams simultaneously, you can target specific folders for selective backup and restore. For example, tar -czvf titan_only.tar.gz titan-data/ creates a minimal archive containing only Titan node identity. This is useful when managing storage constraints or troubleshooting individual container issues without affecting other apps.

How do I completely remove all InternetIncome data and start fresh?

Run sudo bash internetIncome.sh --deleteBackup from the repository root. This command checks that no containers are running, then deletes every file and folder listed in the backup arrays (source: internetIncome.sh lines 1314–1358). After execution, the next --start command will generate entirely new device IDs and node registrations for all applications.

Will restoring data on a new machine affect my earnings or account status?

Restoring to a new host maintains your existing device IDs and node reputations, allowing earnings to continue seamlessly. However, some platforms (EarnApp, Proxyrack) may flag simultaneous identical IDs running on different IP addresses as suspicious. Ensure the old host is completely stopped (--delete or --stop) before starting containers on the restored machine to avoid duplicate node conflicts.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →