Docker Extension to backup and restore docker volumes.

Overview

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

Comments
  • Don't start stopped containers when cloning a volume

    Don't start stopped containers when cloning a volume

    Describe the bug When you clone a volume of a stopped container that container starts automatically. I think this may be dangerous without a warning and without allowing to avoid such start of the stopped container.

    Add the steps to reproduce Steps to reproduce the behavior:

    1. Go to '...'
    2. Click on '....'
    3. Scroll down to '....'
    4. See error

    Describe the expected behavior A clear and concise description of what you expected to happen.

    Optional: Add screenshots If applicable, add screenshots to help explain your problem.

    Output of docker extension version:

    (paste your output here)
    

    Output of docker version:

    (paste your output here)
    

    Include extension console logs If relevant, you can add console logs that might include some trace related to the bug you're reporting

    Additional context Add any other context about the problem here.

    bug 
    opened by felipecruz91 6
  • Sort volumes by size correctly

    Sort volumes by size correctly

    Describe the bug Sorting by size is not correct.

    Add the steps to reproduce Steps to reproduce the behavior:

    1. Go to the Volumes Backup & Share extension.
    2. Click on the Size header column.
    3. See the volumes are sorted incorrectly.

    Describe the expected behavior The volumes should be sorted correctly depending on their size (including the unit, not just the numeric value).

    Optional: Add screenshots image

    Output of docker extension version:

    Client Version: v0.2.13
    Server API Version: 0.3.0
    

    Output of docker version:

    (paste your output here)
    

    Include extension console logs If relevant, you can add console logs that might include some trace related to the bug you're reporting

    Additional context Add any other context about the problem here.

    bug good first issue 
    opened by felipecruz91 5
  • feat(Notifications): add snackbar notifications

    feat(Notifications): add snackbar notifications

    What does this PR do?

    • Changes current notifications and uses Snackbars.
      • This gives us the ability of adding custom links the user can click after an action has finished.
      • Only created volumes and used images are displayed within Snackbars.

    Notes for the reviewer

    • Please review each action in case there is some link that is not working.

    Screenshot

    image

    opened by lucbpz 5
  • Use multi-threaded compression and support more archive formats

    Use multi-threaded compression and support more archive formats

    This PR:

    • Adds support for more archive formats: zstd (.tar.zst) and bzip2 (.tar.bz2).
    • The default archive format when exporting has changed from gzip (.tar.gz) to zstd (.tar.zst). Also, the compression implementation for gzip has changed to pigz (parallel implementation of gzip) which is faster.

    I’ve run some benchmarks in GHA (2-cpu VM) with a volume that contains 4GB of Postgres data:

    goos: linux
    goarch: amd64
    cpu: Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz
    

    Regarding time:

    name                                                                          time/op
    ExportVolume/compression_docker.io/felipecruz/postgres_pgdata_4gb_.tar.gz-2    122s ± 0%
    ExportVolume/compression_docker.io/felipecruz/postgres_pgdata_4gb_.tar.zst-2  46.9s ± 0%
    ExportVolume/compression_docker.io/felipecruz/postgres_pgdata_4gb_.tar.bz2-2   429s ± 0%
    

    Regarding compressed size:

    2f91f352f0ba381893b9e15ea87db0e28a88aa6e28070c07892681d7a0d6ba6b.tar.gz - Size: 1690867939 bytes (1.69 GB)
    2f91f352f0ba381893b9e15ea87db0e28a88aa6e28070c07892681d7a0d6ba6b.tar.zst - Size: 1593686093 bytes (1.59 GB)
    2f91f352f0ba381893b9e15ea87db0e28a88aa6e28070c07892681d7a0d6ba6b.tar.bz2 - Size: 1328059635 bytes (1.32 GB)
    
    opened by felipecruz91 4
  • Extension “Volumes Backup & Share” fails with “Internal Server Error HTTP status code: 500”

    Extension “Volumes Backup & Share” fails with “Internal Server Error HTTP status code: 500”

    Issue type: Unable to backup volume using extension “Volumes Backup & Share” OS Version / Build: Windows 11 Version 22H2 (Build: 22621.674) App version: v.4.13.1 Steps to reproduce: “Volumes Backup & Share” > “Export volume” > “To: Local File” > “.tar.zst” > “Directory” > “Select directory” > “” returns Failed to backup volume to C:\Users\Desktop: {“message”:“Internal Server Error”}. HTTP status code: 500

    Diagnostic ID: 6FD65E53-DD8F-44DB-A774-357A2EE71651/20221102203305

    Hello,

    Trying to export a volume using the Docker extension “Volumes Backup & Share” but it fails regardless of destination: C: C:\Users\Desktop D:
    ^ External USB with the error: Failed to backup volume to C:\Users\Desktop: {“message”:“Internal Server Error”}. HTTP status code: 500

    The container the volume belongs to isn’t started.

    Would appreciate any and all help!

    Best Regards - TheSwede86

    opened by TheSwede86 3
  • Improve volume list performance

    Improve volume list performance

    Currently, the reason why the list of volumes takes some time to load is that calculating the size of each is an expensive operation (the bigger the volumes, the longer it'll take) and it retrieves the list of containers for every volume.

    Instead, we could:

    1. Retrieve the list of volumes (without calculating their size). This should be much faster.
    2. Once the list is loaded, calculate the volume size and the containers attached in the background.

    https://user-images.githubusercontent.com/15997951/189663566-c250a836-cc0e-4c96-ae22-c53c1b600974.mov

    opened by felipecruz91 3
  • Don't fail the build when MUI key is missing

    Don't fail the build when MUI key is missing

    Context: https://github.com/docker/volumes-backup-extension/issues/94#issuecomment-1286765934

    Given the REACT_APP_MUI_LICENSE_KEY is not shared in the repo, we should not make the docker build operation fail if it's not present:

    Before

    $ make build-extension
    
    docker buildx build \
    		--secret id=BUGSNAG_API_KEY \
    		--secret id=REACT_APP_MUI_LICENSE_KEY \
    		--build-arg BUGSNAG_RELEASE_STAGE=local \
    		--build-arg BUGSNAG_APP_VERSION=latest \
    		--load \
    		--tag=docker/volumes-backup-extension:latest \
    		.
    ERROR: failed to stat REACT_APP_MUI_LICENSE_KEY: stat REACT_APP_MUI_LICENSE_KEY: no such file or directory
    make: *** [build-extension] Error 1
    
    opened by felipecruz91 2
  • Re-pin Docker base image in Dockerfile

    Re-pin Docker base image in Dockerfile

    This pull request re-pins the Docker base image busybox:1.35.0 in Dockerfile to the current digest.

    https://github.com/docker/volumes-backup-extension/blob/9ba92c8921132249edbd61aa662dcf02286a6f41/Dockerfile#L48-L48

    Digest sha256:d7f4aada301c0f13d93ceed62fef318c195c38bf430fc8bfbdf1d850514422ff references a multi-CPU architecture image manifest. This image supports the following architectures:

    Changelog for busybox:1.35.0

    Commit

    New image build caused by commit docker-library/official-images@94a73bcb8b795b6275b38df5fe541ba307de9802 to library/busybox:

    Update busybox
    
    Changes:
    
    - https://github.com/docker-library/busybox/commit/b8bb85f: Merge pull request https://github.com/docker-library/busybox/pull/146 from infosiftr/buildroot-2022.08.1
    - https://github.com/docker-library/busybox/commit/b7a7954: Update buildroot to 2022.08.1
    

    Comparison

    Comparing Docker image busybox:1.35.0 at digests

    Current sha256:80548a8d85fa32ce25b126657e29e6caf92ce8aa6b4a0bb5708c58a8d6a751f3 and Proposed sha256:d7f4aada301c0f13d93ceed62fef318c195c38bf430fc8bfbdf1d850514422ff :

    Packages

    No package differences detected

    Files

    No file modifications detected

    History

    The following differences in docker history were detected:

    -/bin/sh -c #(nop) ADD file:eb6acc9b156cd0a00e3bd36aa2a6a5804c67949324d220c6ad53ac98af9be836 in /
    +/bin/sh -c #(nop) ADD file:83c5003206e1b283bbf673e0e1806cc7010d6ea90659bbd75b55d51395f191c0 in /
     /bin/sh -c #(nop)  CMD ["sh"]
    
    

    Ports

    No different exposed ports detected

    Environment Variables

    No different environment variables detected


    Pinning FROM lines to digests makes your builds repeatable. Atomist will raise new pull requests whenever the tag moves, so that you know when the base image has been updated. You can follow a new tag at any time. Just replace the digest with the new tag you want to follow. Atomist, will switch to following this new tag.


    File changed:

    opened by atomist[bot] 2
  • Pin Docker base image in docker/images/alpine-tar-zstd/Dockerfile

    Pin Docker base image in docker/images/alpine-tar-zstd/Dockerfile

    This pull request pins the Docker base image alpine:3.16.2 in docker/images/alpine-tar-zstd/Dockerfile to the current digest.

    https://github.com/docker/volumes-backup-extension/blob/fd8944ab457731bc8d556fa1ac5a63382ad9dd78/docker/images/alpine-tar-zstd/Dockerfile#L1-L1

    Digest sha256:bc41182d7ef5ffc53a40b044e725193bc10142a1243f395ee852a8d9730fc2ad references a multi-CPU architecture image manifest. This image supports the following architectures:


    Pinning FROM lines to digests makes your builds repeatable. Atomist will raise new pull requests whenever the tag moves, so that you know when the base image has been updated. You can follow a new tag at any time. Just replace the digest with the new tag you want to follow. Atomist, will switch to following this new tag.


    File changed:

    opened by atomist[bot] 2
  • Pin Docker base images in Dockerfile

    Pin Docker base images in Dockerfile

    This pull request pins the following Docker base images in Dockerfile to their current digests.

    https://github.com/docker/volumes-backup-extension/blob/09c9759c192768acab777d4f8a0362ab611f18fd/Dockerfile#L1-L1


    https://github.com/docker/volumes-backup-extension/blob/09c9759c192768acab777d4f8a0362ab611f18fd/Dockerfile#L13-L13


    https://github.com/docker/volumes-backup-extension/blob/09c9759c192768acab777d4f8a0362ab611f18fd/Dockerfile#L27-L27

    Digest sha256:bc41182d7ef5ffc53a40b044e725193bc10142a1243f395ee852a8d9730fc2ad references a multi-CPU architecture image manifest. This image supports the following architectures:


    https://github.com/docker/volumes-backup-extension/blob/09c9759c192768acab777d4f8a0362ab611f18fd/Dockerfile#L36-L36


    https://github.com/docker/volumes-backup-extension/blob/09c9759c192768acab777d4f8a0362ab611f18fd/Dockerfile#L45-L45

    Digest sha256:b8f68c62fe862281bf598060f15cb080ef778dc9db19f136d19a3531ffcb9aa0 references a multi-CPU architecture image manifest. This image supports the following architectures:


    Pinning FROM lines to digests makes your builds repeatable. Atomist will raise new pull requests whenever the tag moves, so that you know when the base image has been updated. You can follow a new tag at any time. Just replace the digest with the new tag you want to follow. Atomist, will switch to following this new tag.


    File changed:

    opened by atomist[bot] 2
  • feat(Export): add push to registry. Do some cleanup.

    feat(Export): add push to registry. Do some cleanup.

    What does this PR do?

    • Updates the Export dialog to include the push to registry option.
    • Cleanup actions - remove unused.

    | Updated dialog | Cleanup actions | | --- | --- | | image | image |

    opened by lucbpz 2
  • Schedule backups

    Schedule backups

    Is your feature request related to a problem? Please describe. Schedule a backup, say every day or week.

    Describe the solution you'd like A clear and concise description of what you want to happen.

    Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

    Additional context Add any other context or screenshots about the feature request here.

    enhancement 
    opened by felipecruz91 0
  • Additional Option to name imported volumes/images by folder names

    Additional Option to name imported volumes/images by folder names

    Is your feature request related to a problem? Please describe. TBD

    Describe the solution you'd like Currently, Docker extension assigns random volume names when importing folders to avoid naming conflicts and gives the option to name before importing. Is it possible to add an additional option beside those to name imported volumes/images by folder names as well.

    Describe alternatives you've considered N/A

    Additional context Related to this reddit thread - https://www.reddit.com/r/docker/comments/x11m4n/comment/iq8x2bn/?utm_source=share&utm_medium=web2x&context=3

    enhancement 
    opened by amyb12345 2
  • Backup all volumes that belong to an entire stack

    Backup all volumes that belong to an entire stack

    Is your feature request related to a problem? Please describe. Backup all volumes that belong to an entire stack

    Describe the solution you'd like A clear and concise description of what you want to happen.

    Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

    Additional context Add any other context or screenshots about the feature request here.

    enhancement good first issue 
    opened by felipecruz91 0
  • Support multiple archive format

    Support multiple archive format

    Is your feature request related to a problem? Please describe. I compressed a folder from Mac Os Finder which creates a zip file. But I couldn't import it and had to manually create a gzip file. However, the extension was .tgz instead of .tar.gz.

    Describe the solution you'd like I wish I can import

    • zip files
    • gzip files with any extension
    enhancement 
    opened by benja-M-1 1
  • Drag and drop a tar.gz over the app to import it

    Drag and drop a tar.gz over the app to import it

    Is your feature request related to a problem? Please describe. I was importing a tar.gz and I mechanically dragged it over Docker Desktop (the extension being open) and realise that it is not possible

    Describe the solution you'd like When dropping a file on the app I wish the import dialog opens

    Describe alternatives you've considered none, just click on the button and navigate to the folder where my tar.gs is.

    Additional context Add any other context or screenshots about the feature request here.

    enhancement 
    opened by benja-M-1 1
  • cli?

    cli?

    Is your feature request related to a problem? Please describe.

    No

    Describe the solution you'd like

    I would <3 a cli for this when I install the extension

    Describe alternatives you've considered

    Using the UI, but sometimes I prefer the terminal

    Additional context

    enhancement 
    opened by rumpl 1
Releases(1.1.1)
  • 1.1.1(Nov 23, 2022)

    What's Changed

    • Re-pin Docker base image in Dockerfile by @atomist in https://github.com/docker/volumes-backup-extension/pull/90
    • Don't fail the build when MUI key is missing by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/95
    • fix: Sorting volume size by bytes size by @Lalit3716 in https://github.com/docker/volumes-backup-extension/pull/96
    • Add Running filter when stopping containers attached to a volume and rename functions for better clarity by @SscSPs in https://github.com/docker/volumes-backup-extension/pull/93
    • Set com.docker.extension.categories and fix vulnerabilities by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/99

    New Contributors

    • @Lalit3716 made their first contribution in https://github.com/docker/volumes-backup-extension/pull/96
    • @SscSPs made their first contribution in https://github.com/docker/volumes-backup-extension/pull/93

    Full Changelog: https://github.com/docker/volumes-backup-extension/compare/1.1.0...1.1.1

    Source code(tar.gz)
    Source code(zip)
  • 1.1.0(Sep 27, 2022)

    Major updates

    • Improved volume list performance.
    • Added support to import backups from any .tar.gz.
    • Added support to export and import volumes to/from .tar.zst and .tar.bz2.
    • Copy volume labels when cloning a volume.
    • Added error tracking to detect issues before users report them.
    • Fixed new vulnerabilities detected in the Dockerfile.
    More details

    Bug Fixes

    • Fixed a bug where the clone operation will not validate whether the destination volume already existed.

    What's Changed

    • feat(lint): add eslint by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/56
    • Do not keep docker engine CLI in memory, re-instantiate if for every HTTP request by @gtardif in https://github.com/docker/volumes-backup-extension/pull/57
    • Keep volume labels when cloning by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/65
    • Fix new vulnerabilities by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/66
    • Improve volume list performance by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/62
    • Allow to import from any .tar.gz by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/63
    • Add Bugsnag to report errors by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/58
    • Use correct commit sha and tag name by @cdupuis in https://github.com/docker/volumes-backup-extension/pull/72
    • Validate volume name before cloning by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/71
    • Pin Docker base images in Dockerfile by @atomist in https://github.com/docker/volumes-backup-extension/pull/68
    • Update changelog for next release by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/73
    • Run jobs in //, do not run Trivy anymore as we have atomist that provides better feedback by @gtardif in https://github.com/docker/volumes-backup-extension/pull/74
    • Avoid duplication of image labels by @gtardif in https://github.com/docker/volumes-backup-extension/pull/77
    • feat(): add ux improvements by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/80
    • Use multi-threaded compression and support more archive formats by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/79
    • Enable back GHA cache in workflow by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/82
    • Pin Docker base image in docker/images/alpine-tar-zstd/Dockerfile by @atomist in https://github.com/docker/volumes-backup-extension/pull/81
    • Remove benchmark from the CI workflows by @gtardif in https://github.com/docker/volumes-backup-extension/pull/83
    • Support backwards compatibility when importing .tar.gz archives from previous version by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/84
    • Minor UX changes by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/85
    • Fix row index by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/86
    • Re-pin Docker base image in Dockerfile by @atomist in https://github.com/docker/volumes-backup-extension/pull/88

    New Contributors

    • @cdupuis made their first contribution in https://github.com/docker/volumes-backup-extension/pull/72
    • @atomist made their first contribution in https://github.com/docker/volumes-backup-extension/pull/68

    Full Changelog: https://github.com/docker/volumes-backup-extension/compare/1.0.0...1.1.0

    Source code(tar.gz)
    Source code(zip)
  • 1.0.0(Aug 30, 2022)

    What's Changed

    • Stop and start containers on push and pull by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/50
    • Minor UI fixes by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/51
    • Do not allow to push volumes larger than 10GB by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/53
    • Gather analytics on user actions (when desktop allows gathering analytics) by @gtardif in https://github.com/docker/volumes-backup-extension/pull/52
    • Add acknowledgements to detailed description by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/54

    Full Changelog: https://github.com/docker/volumes-backup-extension/compare/1.0.0-rc.2...1.0.0

    Source code(tar.gz)
    Source code(zip)
  • 1.0.0-rc.2(Aug 29, 2022)

    What's Changed

    • fix(Notifications): fix notifications API to create errors correctly by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/45
    • Display spinner when doing an action on a volume by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/47
    • Do not push image to DockerHub on forks by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/49
    • Invert icons used for import / export by @gtardif in https://github.com/docker/volumes-backup-extension/pull/48

    New Contributors

    • @gtardif made their first contribution in https://github.com/docker/volumes-backup-extension/pull/48

    Full Changelog: https://github.com/docker/volumes-backup-extension/compare/1.0.0-rc.1...1.0.0-rc.2

    Source code(tar.gz)
    Source code(zip)
  • 1.0.0-rc.1(Aug 23, 2022)

    What's Changed

    • Listen to volume events by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/23
    • Stop/start containers when exporting/importing by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/24
    • Do not use /var/run/docker.sock.raw by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/26
    • Add more tests and clean up container logs by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/27
    • Add CI badges by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/28
    • Return volume size as a numeric byte count by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/30
    • feat(ImportIntoNew): add Import Into New user flow. by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/31
    • Clean volume data before importing/loading by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/32
    • Feature/single import by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/33
    • Feature/export by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/34
    • feat(*): change icon and title, add feedback form by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/35
    • feat(Transfer): change dialog to new design by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/37
    • Implement push volume to registry by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/29
    • Import volume from registry (pull) by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/38
    • Add issue templates by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/40
    • feat(Export): add push to registry. Do some cleanup. by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/39
    • Feature/pull from registry by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/41
    • feat(Notifications): add snackbar notifications by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/42
    • feat(metadata): update dockerfile, add screenshots by @lucbpz in https://github.com/docker/volumes-backup-extension/pull/43
    • Pass auth in body instead of in the req headers by @felipecruz91 in https://github.com/docker/volumes-backup-extension/pull/44

    New Contributors

    • @lucbpz made their first contribution in https://github.com/docker/volumes-backup-extension/pull/31

    Full Changelog: https://github.com/docker/volumes-backup-extension/compare/0.0.7...0.1.0-alpha

    Source code(tar.gz)
    Source code(zip)
  • 0.0.7(Jul 16, 2022)

    What's Changed

    • Run only one container to get volume sizes with nsenter by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/21

    Full Changelog: https://github.com/felipecruz91/vackup-docker-extension/compare/0.0.6...0.0.7

    Source code(tar.gz)
    Source code(zip)
  • 0.0.6(Jul 16, 2022)

    What's Changed

    • Use backend service to get volumes, containers and sizes by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/20

    Full Changelog: https://github.com/felipecruz91/vackup-docker-extension/compare/0.0.5...0.0.6

    Source code(tar.gz)
    Source code(zip)
  • 0.0.5(Jul 9, 2022)

    What's Changed

    • Performance improvements by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/15
    • Added a new action to delete a volume forever.
    • Fix https://github.com/felipecruz91/vackup-docker-extension/issues/4
    • Add a progress bar when calculating a volume size.

    Full Changelog: https://github.com/felipecruz91/vackup-docker-extension/compare/0.0.4...0.0.5

    Source code(tar.gz)
    Source code(zip)
  • 0.0.4(Jun 28, 2022)

    What's Changed

    • Clone and transfer volumes between Docker hosts by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/11
    • Run container from volume by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/12
    • Fix toast error when image was not available locally by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/13

    Full Changelog: https://github.com/felipecruz91/vackup-docker-extension/compare/0.0.3...0.0.4

    Source code(tar.gz)
    Source code(zip)
  • 0.0.3(Jun 21, 2022)

    What's Changed

    • Implement import, save, load and empty actions by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/7

    Acknowledgments

    Thank you @benja-M-1 for the UI/UX suggestions!

    Full Changelog: https://github.com/felipecruz91/vackup-docker-extension/compare/0.0.2...0.0.3

    Source code(tar.gz)
    Source code(zip)
  • 0.0.2(Jun 17, 2022)

    What's Changed

    • Try to improve container names and volume names rendering by @benja-M-1 in https://github.com/felipecruz91/vackup-docker-extension/pull/2
    • Display containers by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/1
    • Remove mountpoint column by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/5
    • Add GHA workflows by @felipecruz91 in https://github.com/felipecruz91/vackup-docker-extension/pull/6

    New Contributors

    • @benja-M-1 made their first contribution in https://github.com/felipecruz91/vackup-docker-extension/pull/2
    • @felipecruz91 made their first contribution in https://github.com/felipecruz91/vackup-docker-extension/pull/1

    Full Changelog: https://github.com/felipecruz91/vackup-docker-extension/commits/0.0.2

    Source code(tar.gz)
    Source code(zip)
Owner
Felipe Cruz Martinez
Software Engineer @docker 🐳 CKAD.
Felipe Cruz Martinez
Given an object and a property, replaces a property descriptor (or deletes it), and returns a thunk to restore it.

Given an object and a property, replaces a property descriptor (or deletes it), and returns a thunk to restore it.

Jordan Harband 7 Apr 20, 2022
This provides an extension integration with Docker Desktop to run k9s quickly and easily through the Docker Desktop interface.

k9s extension for Docker Desktop This provides an extension integration with Docker Desktop to allow k9s quickly and easily through the Docker Desktop

James Spurin 14 Dec 16, 2022
A modern ebook manager and reader with sync and backup capacities for Windows, macOS, Linux and Web

简体中文 | English Koodo Reader A cross-platform ebook reader Download | Preview | Roadmap | Document Preview Feature Format support: EPUB (.epub) Scanned

Troye Guo 8.6k Dec 29, 2022
Custom endpoint to backup the PG database and upload the `.dump` to Directus.

Directus Backup Endpoint Custom Directus endpoint to backup Postgres database using pg_dump and upload the .dump file into Directus files. Usage Clone

Guilherme Oliveira 7 Dec 21, 2022
Custom operation to backup the PG database and upload the .dump to Directus.

Directus Backup Operation Custom Directus operation to backup Postgres database using pg_dump and upload the .dump file into Directus storage. Prerequ

Guilherme Oliveira 7 Dec 21, 2022
Backup of faker.js source code.

This is mirrored project from faker.js. This is created because it seemed to have been hacked. faker.js - generate massive amounts of fake data in the

dohyeon lee 2 Jan 8, 2022
It is automatic mongodb data backup with cronjob.

Do you need my help? Visit our Discord server. Installation npm i mongoose-backup --save yarn add mongoose-backup Guide const MongoBackuper = require(

Void Development 3 Aug 8, 2022
A Turborepo with Strapi v4 (w/ postgres database) + Next.js powered by docker and docker-compose

Turborepo + Strapi + Next.js + Docker A Turborepo with Strapi v4 (w/ postgres database) + Next.js powered by docker and docker-compose. ⚠️ Prerequisit

Elvin Chu 60 Dec 29, 2022
Atlan is a CLI that helps you to manage local dockerized infrastructure without any needed knowledge on Docker and Docker Compose.

Atlan CLI Atlan is a CLI that helps you to manage local dockerized infrastructure without any needed knowledge on Docker and Docker Compose. What is A

Myastro 10 Aug 17, 2022
An example T3 app containerized with Docker, Docker Compose, and deployed on Railway

Create T3 App This is an app bootstrapped according to the init.tips stack, also known as the T3-Stack. What's next? How do I make an app with this? W

Anthony Campolo 15 Dec 19, 2022
⛴️ Docker extension for deepfence/SecretScanner 🔐

SecretScanner Docker Extension How to install in Docker Desktop ? Note: Method to install this extension will change once SecretScanner extension is a

Deepfence 15 Oct 28, 2022
Eth-explorers-extension - Chrome extension to open Ethereum addresses & transaction hash from any page on popular explorers + dashboards

eth-explorers-extension(s) This repository contains two folders with two extensions that work for address and transactions respectively. 1. eth-addres

Apoorv Lathey 71 Jan 6, 2023
This is boilerplate of express, typescript and postgreSql with typeorm and docker based setup

express-typescript-postgres-typeorm-docker-swagger-boilerplate This is boilerplate of express, typescript and postgreSql with typeorm and docker based

beBhavyhere 2 Jun 2, 2022
The app's backend is written in Python (Flask) and for search it uses Elasticsearch. I used this app as candidate application for learning out how to build, run and deploy a multi-container environment (docker-compose).

foodtrucks-app-docker-compose The app's backend is written in Python (Flask) and for search it uses Elasticsearch. I used this app as candidate applic

Selçuk Şan 3 Oct 24, 2022
Hundreds of Offensive and Useful Docker Images for Network Intrusion. The name says it all.

?? HOUDINI: Hundreds of Offensive and Useful Docker Images for Network Intrusion HOUDINI is a curated list of Network Security related Docker Images f

SecSI 1.1k Dec 31, 2022
Personal Blog - a project developed with Angular for the front-end interface and Wordpress for the back-end API served with Docker containers

PersonalBlog This project was generated with Angular CLI version 13.0.1. Front-end Interface Development server Run ng serve or ng serve --configurati

null 9 Oct 5, 2022
For this workshop, we're going to learn more about cloud computing by exploring how to use Pulumi to build, configure, and deploy a real-life, modern application using Docker

For this workshop, we're going to learn more about cloud computing by exploring how to use Pulumi to build, configure, and deploy a real-life, modern application using Docker. We will create a frontend, a backend, and a database to deploy the Pulumipus Boba Tea Shop. Along the way, we'll learn more about how Pulumi works.

Kat Cosgrove 9 Dec 29, 2022
Fullstack Turborepo starter. Typescript, Nestjs, Nextjs, Tailwind, Prisma, Github Actions, Docker, And Reverse proxy configured

Turborepo (NestJS + Prisma + NextJS + Tailwind + Typescript + Jest) Starter This is fullstack turborepo starter. It comes with the following features.

Ejaz Ahmed 132 Jan 9, 2023
Jugglr is a tool for managing test data and running tests with a dedicated database running in a Docker container.

Jugglr Jugglr is a tool for managing test data and running tests with a lightweight, dedicated database. Jugglr enables developers, testers, and CI/CD

OSLabs Beta 74 Aug 20, 2022