https://github.com/itskdhere/dsmt
๐ณDocker Storage Migration Tool๐ฆ
https://github.com/itskdhere/dsmt
backup-tool backup-utility cli docker docker-container migration-tool storage
Last synced: 3 months ago
JSON representation
๐ณDocker Storage Migration Tool๐ฆ
- Host: GitHub
- URL: https://github.com/itskdhere/dsmt
- Owner: itskdhere
- License: mit
- Created: 2025-04-21T12:24:00.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-09-13T13:44:04.000Z (9 months ago)
- Last Synced: 2025-09-15T17:15:18.866Z (9 months ago)
- Topics: backup-tool, backup-utility, cli, docker, docker-container, migration-tool, storage
- Language: TypeScript
- Homepage: https://www.npmjs.com/package/dsmt
- Size: 68.4 KB
- Stars: 7
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# ๐ณ Docker Storage Migration Tool ๐ฆ
A command-line utility for seamlessly exporting and importing Docker volumes and bind mounts.
## ๐ Overview
DSMT (Docker Storage Migration Tool) provides a simple way to:
- ๐ค Export Docker volumes or bind mounts to compressed tarballs.
- ๐ฅ Import compressed tarballs into Docker volumes or bind mounts.
๐ This tool makes it easy to backup, restore, or migrate Docker storage across systems.
## ๐ป Installation
```bash
npm install -g dsmt
```
## ๐ Usage
### ๐ค Exporting Docker Storage
Export a Docker volume:
```bash
dsmt export volume_name /path/to/export/directory
```
Export a bind mount:
```bash
dsmt export /path/to/bind/mount /path/to/export/directory
```
### ๐ฅ Importing Docker Storage
Import to a Docker volume:
```bash
dsmt import /path/to/tarball.tar.gz volume_name
```
Import to a bind mount:
```bash
dsmt import /path/to/tarball.tar.gz /path/to/bind/mount
```
## โ๏ธ Options
Both commands support the following options:
- `-v, --volume`: Explicitly specify source/destination as a Docker volume
- `-m, --mount`: Explicitly specify source/destination as a bind mount
The tool will automatically detect the source/destination type in most cases, but you can use these flags to be explicit.
## ๐ Examples
```bash
# Export a volume named 'mongodb_data' to the current directory
dsmt export mongodb_data ./
# Import a tarball to a new volume
dsmt import ./mongodb_data.tar.gz new_mongodb_data
# Export a bind mount to the /backups directory
dsmt export /var/www/html /backups
# Import a tarball to a bind mount
dsmt import ./html.tar.gz /var/www/html
```
## ๐ ๏ธ Contribution
Please refer to the [CONTRIBUTING.md](CONTRIBUTING.md) file for guidelines on contributing to this project.
## ๐ Security
Please refer to the [SECURITY.md](SECURITY.md) file for security-related issues and reporting.
## ๐ License
MIT ยฉ [itskdhere](https://github.com/itskdhere)