Download the PHP package wolnosciowiec/wolnosciowiec-image-repository without Composer

On this page you can find all versions of the php package wolnosciowiec/wolnosciowiec-image-repository. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package wolnosciowiec-image-repository

Backup Repository

NOTICE: Sadly, we no longer have power to maintain Backup Repository ecosystem as it grew up pretty big and we are not a full-time employeed development team. Feel free to maintain a fork.

Coverage Status Test Artifact Hub

Cloud-native, zero-knowledge, multi-tenant, compliance-strict, security-first backup storage with minimal footprint.

TLDR; Primitive backup storage for E2E GPG-encrypted files, with multi-user, quotas, versioning, using a object storage (S3/Min.io/GCS etc.) and deployed on Kubernetes or standalone. No fancy stuff included, lightweight and stable as much as possible is the project target.

Natively supports:

Notice:

Technology stack:

Requirements:

Support:

Difference between other backups systems

Selecting a best tool depends on specific use case. Most common way on Kubernetes is to perform cloud-native volume snapshotting, there Velero project is the most recognized solution that integrates with cloud provides like AWS, Google Cloud or Azure and uses API calls to ask cloud provider for a snapshot.

Backup Repository approach uses application-native and more traditional method of performing backups - using tar, pg_dump, mysqldump and other application-native tools for Backup and Restore. This selected approach have pros and cons as following:

Pros:

Cons:

Maturity

Notice: This software is currently in a pre-prod stage. We do not plan breaking changes to the functionality, but the API interface may still change. We recommend our official Backup Maker client that will be always up-to-date with API changes.

Star a repo, subscribe for releases to get informed.

Security/Compliance demo

Are my backups created in specific time?

Every Backup Collection has HTTP health check endpoint you can monitor and trigger alerts in case when expected backup was not submitted or is invalid.

Attacker got my Kubernetes cluster and wants to overwrite remote backups

Attacker got my Backup Repository credentials from target environment

Attacker wants to upload a terabyte file to generate cloud costs or exhaust disk space

Backup Repository operates on disk quotas. Every incoming byte stream is calculated on the fly and cancelled, when the limit is exhausted.

Storage of my Backup Repository server leaked!

End-To-End backup encryption makes your backup unreadable for people not having your GPG private key.

Running

Application is written in GO and distributed as a single-binary file. Recommended way is to run it within a docker image on a Kubernetes cluster.

Running standalone

Installing via Helm

Documentation

For documentation please look into ./docs directory

NOTICE: You are probably reading documentation at main branch, please consider selecting a versioned tag from branch/tag selector.

Ecosystem

Find more projects in the Github Community.

Security

RBAC

Objects of type kind: BackupUser (users that can login to Backup Repository server) have a list of global roles. Global roles are granting access to all objects of given type in the system.

If somebody has a collectionManager in its profile, then in all collections that person is a manager which means browsing, deleting, editing, creating.

Scoped RBAC

Most of the object types implements accessControl to specify permissions for given users in scope of this object.

RBAC in code

Domain objects should implement a logic that checks given Actor if it can act specifically in context of this object.

ACL in code

Backup Windows

Good practice is to limit how often versions can be submitted. Attacker would need to be very patient to overwrite your past backups with malicious ones.

In emergency cases System Administrator or person with uploadsAnytime role can upload backups between backup windows. Be careful! Do not set up automated backups with administrator account or with account that has uploadsAnytime role.

Quota

System administrator can create a collection with specified storage limits on single file, whole collection, select a rotation strategy.

Concept is simple - there can be stored X versions of Y size in given collection.

Additionally, there is such thing as extra space which allows to upload a file that exceeds the limit to not break the backup pipeline. Such situation is immediately reported in a collection health check as a warning.

Extra space

The following example allows uploading files of 1 MB size normally, but optionally allows uploading larger files that could in summary take additional 5MB. For example one of uploaded versions can be a 5MB file, or there could be two versions of 2,5MB file each - both exceeding the soft limit of maxOneVersionSize. The maxCollectionSize is a hard limit.

Rotation

Rotation Strategies gives control over backup versioning.

fifo

First in first out. When adding a new version deletes oldest.

Contributing

This software is developed with GoLand licensed for open source development. Special thanks for the support.

Security policy


All versions of wolnosciowiec-image-repository with dependencies

PHP Build Version
Package Version
Requires php Version >=7.2
ext-ctype Version *
ext-fileinfo Version *
ext-iconv Version *
ext-json Version *
ext-openssl Version *
ext-pdo Version *
aws/aws-sdk-php Version ^3.87
blocktrail/cryptojs-aes-php Version ^0.1.0
coraxster/flysystem-aws-s3-v3-minio Version ^1.0
gabrielelana/byte-units Version ^0.5.0
glenscott/url-normalizer Version ^1.4
guzzlehttp/guzzle Version ^6.3
nelmio/api-doc-bundle Version ^3.4
oneup/flysystem-bundle Version ^3.0
psr/simple-cache Version ^1.0
ramsey/uuid Version ^3.8
sensio/framework-extra-bundle Version ^5.2
sentry/sentry-symfony Version ^3.1
symfony/asset Version 4.3.*
symfony/console Version *
symfony/dotenv Version 4.3.*
symfony/flex Version ^1.1
symfony/form Version *
symfony/framework-bundle Version *
symfony/monolog-bundle Version ^3.4
symfony/orm-pack Version ^1.0
symfony/security Version *
symfony/security-bundle Version *
symfony/translation Version 4.2.*
symfony/twig-bundle Version 4.2.*
symfony/validator Version *
symfony/yaml Version *
twistor/flysystem-stream-wrapper Version ^1.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package wolnosciowiec/wolnosciowiec-image-repository contains the following files

Loading the files please wait ....