Back up, clone, restore, and share Docker volumes effortlessly.
Перейти к файлу
felipecruz91 7d19cafd5e
Change final image from alpine to busybox
2022-07-16 15:41:26 +02:00
.github/workflows Fix vulnerabilities 2022-07-16 15:22:55 +02:00
docs/images [skip ci] - Update README 2022-06-21 13:49:05 +02:00
ui Use backend service to get volumes, containers and sizes 2022-07-16 14:36:58 +02:00
vm go mod tidy 2022-07-16 15:26:13 +02:00
.dockerignore Initial commit 2022-06-15 12:42:44 +02:00
.gitignore Recalculate size when importing, loading or emptying 2022-07-09 11:31:39 +02:00
Dockerfile Change final image from alpine to busybox 2022-07-16 15:41:26 +02:00
LICENSE Create LICENSE 2022-06-15 23:52:50 +02:00
Makefile Use backend service to get volumes, containers and sizes 2022-07-16 14:36:58 +02:00
README.md [skip ci] - Update README 2022-06-21 13:49:05 +02:00
docker-compose.yaml Use backend service to get volumes, containers and sizes 2022-07-16 14:36:58 +02:00
docker.svg Initial commit 2022-06-15 12:42:44 +02:00
metadata.json Use backend service to get volumes, containers and sizes 2022-07-16 14:36:58 +02:00

README.md

vackup-docker-extension

This repository contains a Docker Extension that backups Docker volumes. This extension is purely a demonstration of how it'd be to convert the Vackup project by Bret Fisher into a Docker Extension. This example is part of the YouTube Livestream Introducing Docker Extensions hosted by Bret Fisher.

Extension Screenshot

Installation

Install Docker Extension with the Extensions CLI.

  docker extension install felipecruz/vackup-docker-extension:latest

Run Locally

Clone the project

  git clone https://github.com/felipecruz91/vackup-docker-extension.git

Go to the project directory

  cd vackup-docker-extension

Build the extension

  docker build -t felipecruz/vackup-docker-extension:latest .

Install the extension

  docker extension install felipecruz/vackup-docker-extension:latest

Developing the frontend

  cd ui
  npm install
  npm start

This starts a development server that listens on port 3000.

You can now tell Docker Desktop to use this as the frontend source. In another terminal run:

  docker extension dev ui-source felipecruz/vackup-docker-extension:latest http://localhost:3000

In order to open the Chrome Dev Tools for your extension when you click on the extension tab, run:

  docker extension dev debug felipecruz/vackup-docker-extension:latest

Each subsequent click on the extension tab will also open Chrome Dev Tools. To stop this behaviour, run:

  docker extension dev reset felipecruz/vackup-docker-extension:latest

Known issues

  • Exporting large volumes fail at the moment with a toast error that says ERR_CHILD_PROCESS_STDIO_MAXBUFFER.

Acknowledgements

License

MIT