Beispiel #1
0
/**
 * Returns a specific number of results from a stream.
 *
 * @param integer         $n the number of results
 * @param [Cons|callable] $d a stream
 */
function take($n, $d)
{
    if ($n === 0) {
        return nil();
    } else {
        $d = pull($d);
        if (isNull($d)) {
            return nil();
        } else {
            return cons(car($d), take($n - 1, cdr($d)));
        }
    }
}
Beispiel #2
0
<?php

$dockerRegistry = 'https://registry.hub.docker.com/v2/repositories/';
$userName = '******';
$password = '******';
$savePath = '/var/registry/dump/';
$remoteSave = true;
$backUpServer = 'localdrive';
$backUpUser = '******';
$backUpDir = '/volume1/homes/ec/Docker';
mkdir($savePath, 0777, true);
///;.'/
foreach (getImages() as $image) {
    $imageName = $image['name'] . ':' . $image['tag'];
    pull($imageName);
    $file = $savePath . $imageName . '.tar';
    save($imageName, $file);
}
exec(sprintf('rsync -nvizaP %s %s', $savePath, $backUpUser . '@' . $backUpServer . ':' . $backUpDir));
function pull($imageName)
{
    return exec(sprintf('docker pull %s', $imageName));
}
function save($imageName, $savePath)
{
    return exec(sprintf('docker save -o %s %s', $imageName, $savePath));
}
function getImages()
{
    exec('docker images', $result);
    foreach ($result as $line) {