當前位置: 首頁>>代碼示例>>Python>>正文


Python utils.kwargs_from_env方法代碼示例

本文整理匯總了Python中docker.utils.kwargs_from_env方法的典型用法代碼示例。如果您正苦於以下問題:Python utils.kwargs_from_env方法的具體用法?Python utils.kwargs_from_env怎麽用?Python utils.kwargs_from_env使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在docker.utils的用法示例。


在下文中一共展示了utils.kwargs_from_env方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: test_dirty_fails_without_flag

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def test_dirty_fails_without_flag(tmpdir):
    tmp = tmpdir.join('shipwright-sample')
    path = str(tmp)
    source = pkg_resources.resource_filename(
        __name__,
        'examples/shipwright-sample',
    )
    create_repo(path, source)
    tmp.join('service1/base.txt').write('Some text')
    client_cfg = docker_utils.kwargs_from_env()

    args = get_defaults()

    result = shipw_cli.run(
        path=path,
        client_cfg=client_cfg,
        arguments=args,
        environ={},
    )
    assert '--dirty' in result
    assert 'Abort' in result 
開發者ID:6si,項目名稱:shipwright,代碼行數:23,代碼來源:test_docker_builds.py

示例2: client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def client(self):
        """single global client instance"""
        cls = self.__class__
        if cls._client is None:
            kwargs = {"version": "auto"}
            if self.tls_config:
                kwargs["tls"] = docker.tls.TLSConfig(**self.tls_config)
            kwargs.update(kwargs_from_env())
            kwargs.update(self.client_kwargs)
            client = docker.APIClient(**kwargs)
            cls._client = client
        return cls._client

    # notice when user has set the command
    # default command is that of the container,
    # but user can override it via config 
開發者ID:jupyterhub,項目名稱:dockerspawner,代碼行數:18,代碼來源:dockerspawner.py

示例3: init_docker_client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def init_docker_client(timeout=2):
    """
    Init docker-py client.
    """
    if sys.platform.startswith('darwin') \
            or sys.platform.startswith('win32'):
        # mac or win
        kwargs = kwargs_from_env()
        if 'tls' in kwargs:
            kwargs['tls'].assert_hostname = False
        kwargs['timeout'] = timeout
        client = DockerAPIClient(**kwargs)
    else:
        # unix-based
        client = DockerAPIClient(
            timeout=timeout,
            base_url='unix://var/run/docker.sock')
    return client 
開發者ID:j-bennet,項目名稱:wharfee,代碼行數:20,代碼來源:docker_utils.py

示例4: docker_client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def docker_client():
    client_cfg = docker_utils.kwargs_from_env()
    return docker.Client(version='1.21', **client_cfg) 
開發者ID:yodle,項目名稱:docker-registry-client,代碼行數:5,代碼來源:conftest.py

示例5: docker_client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def docker_client(args):
    """
    Attempts to create a docker client.

     - args: The arguments parsed on the command line.
     - returns: a docker-py client
    """
    if _platform == 'linux' or _platform == 'linux2':
        # linux
        if "docker_url" in args:
            return Client(
                base_url=args.docker_url,
                timeout=args.timeout,
                version='auto')
        else:
            # TODO: test to see if this does the right thing by default.
            return Client(
                version='auto',
                timeout=args.timeout,
                **kwargs_from_env())
    elif _platform == 'darwin':
        # OS X.
        kwargs = kwargs_from_env()
        if not args.strict_docker_tls and 'tls' in kwargs:
            kwargs['tls'].assert_hostname = False

        try:
            return Client(version='auto', timeout=args.timeout, **kwargs)
        except:
            logging.error(
                'Could not connect to the docker daemon. ' +
                'Please make sure docker is running.'
            )
            sys.exit(2)

    elif _platform == 'win32' or _platform == 'cygwin':
        # Windows.
        logging.fatal("Sorry, windows is not currently supported!")
        sys.exit(2) 
開發者ID:coursera,項目名稱:courseraprogramming,代碼行數:41,代碼來源:utils.py

示例6: client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def client(self):
        """single global client instance"""
        cls = self.__class__

        if cls._client is None:
            kwargs = {}
            if self.tls_config:
                kwargs['tls'] = docker.tls.TLSConfig(**self.tls_config)
            kwargs.update(kwargs_from_env())
            client = docker.APIClient(version='auto', **kwargs)

            cls._client = client
        return cls._client 
開發者ID:cassinyio,項目名稱:SwarmSpawner,代碼行數:15,代碼來源:swarmspawner.py

示例7: get_api_client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def get_api_client():
    """Return the API client or initialize it."""
    if 'api_client' not in __st__:
        from docker import APIClient, utils
        params = utils.kwargs_from_env()
        base_url = None if 'base_url' not in params else params['base_url']
        tls = None if 'tls' not in params else params['tls']

        __st__['api_client'] = APIClient(base_url=base_url, tls=tls)

    return __st__['api_client'] 
開發者ID:stakkr-org,項目名稱:stakkr,代碼行數:13,代碼來源:docker_actions.py

示例8: docker_client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def docker_client(environment, version=None, tls_config=None, host=None,
                  tls_version=None):
    """
    Returns a docker-py client configured using environment variables
    according to the same logic as the official Docker client.
    """
    try:
        kwargs = kwargs_from_env(environment=environment, ssl_version=tls_version)
    except TLSParameterError:
        raise UserError(
            "TLS configuration is invalid - make sure your DOCKER_TLS_VERIFY "
            "and DOCKER_CERT_PATH are set correctly.\n"
            "You might need to run `eval \"$(docker-machine env default)\"`")

    if host:
        kwargs['base_url'] = host
    if tls_config:
        kwargs['tls'] = tls_config

    if version:
        kwargs['version'] = version

    timeout = environment.get('COMPOSE_HTTP_TIMEOUT')
    if timeout:
        kwargs['timeout'] = int(timeout)
    else:
        kwargs['timeout'] = HTTP_TIMEOUT

    kwargs['user_agent'] = generate_user_agent()

    # Workaround for
    # https://pyinstaller.readthedocs.io/en/v3.3.1/runtime-information.html#ld-library-path-libpath-considerations
    if 'LD_LIBRARY_PATH_ORIG' in environment:
        kwargs['credstore_env'] = {
            'LD_LIBRARY_PATH': environment.get('LD_LIBRARY_PATH_ORIG'),
        }

    client = APIClient(**kwargs)
    client._original_base_url = kwargs.get('base_url')

    return client 
開發者ID:QData,項目名稱:deepWordBug,代碼行數:43,代碼來源:docker_client.py

示例9: test_sample

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def test_sample(tmpdir, capsys):
    path = str(tmpdir.join('shipwright-sample'))
    source = pkg_resources.resource_filename(
        __name__,
        'examples/shipwright-sample',
    )
    repo = create_repo(path, source)
    tag = repo.head.ref.commit.hexsha[:12]

    client_cfg = docker_utils.kwargs_from_env()
    args = get_defaults()
    args['images'] = True

    shipw_cli.run(
        path=path,
        client_cfg=client_cfg,
        arguments=args,
        environ={},
    )

    out, err = capsys.readouterr()
    images = {'base', 'shared', 'service1'}
    tmpl = 'shipwright/{img}:{tag}'
    expected = {tmpl.format(img=i, tag=tag) for i in images}

    assert {l for l in out.split('\n') if l} == expected 
開發者ID:6si,項目名稱:shipwright,代碼行數:28,代碼來源:test_images.py

示例10: test_dump_file

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def test_dump_file(tmpdir, docker_client):
    dump_file = tmpdir.join('dump.txt')
    tmp = tmpdir.join('shipwright-sample')
    path = str(tmp)
    source = pkg_resources.resource_filename(
        __name__,
        'examples/shipwright-sample',
    )
    create_repo(path, source)

    client_cfg = docker_utils.kwargs_from_env()

    cli = docker_client

    try:
        args = get_defaults()
        args['--dump-file'] = str(dump_file)
        shipw_cli.run(
            path=path,
            client_cfg=client_cfg,
            arguments=args,
            environ={},
        )

        assert ' : FROM busybox' in dump_file.read()
    finally:
        old_images = (
            cli.images(name='shipwright/service1', quiet=True) +
            cli.images(name='shipwright/shared', quiet=True) +
            cli.images(name='shipwright/base', quiet=True)
        )
        for image in old_images:
            cli.remove_image(image, force=True) 
開發者ID:6si,項目名稱:shipwright,代碼行數:35,代碼來源:test_docker_builds.py

示例11: test_exclude

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def test_exclude(tmpdir, docker_client):
    path = str(tmpdir.join('shipwright-sample'))
    source = pkg_resources.resource_filename(
        __name__,
        'examples/shipwright-sample',
    )
    create_repo(path, source)
    client_cfg = docker_utils.kwargs_from_env()

    cli = docker_client

    args = get_defaults()
    args['--exclude'] = [
        'shipwright/service1',
        'shipwright/shared',
    ]

    try:
        shipw_cli.run(
            path=path,
            client_cfg=client_cfg,
            arguments=args,
            environ={},
        )

        base, = (
            cli.images(name='shipwright/service1') +
            cli.images(name='shipwright/shared') +
            cli.images(name='shipwright/base')
        )

        assert 'shipwright/base:master' in base['RepoTags']
        assert 'shipwright/base:latest' in base['RepoTags']
    finally:
        old_images = (
            cli.images(name='shipwright/base', quiet=True)
        )
        for image in old_images:
            cli.remove_image(image, force=True) 
開發者ID:6si,項目名稱:shipwright,代碼行數:41,代碼來源:test_docker_builds.py

示例12: docker_client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def docker_client():
    client_cfg = docker_utils.kwargs_from_env()
    return docker.APIClient(version='1.21', **client_cfg) 
開發者ID:6si,項目名稱:shipwright,代碼行數:5,代碼來源:conftest.py

示例13: get_docker_client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def get_docker_client() -> Client:
    client_opts = kwargs_from_env(assert_hostname=False)
    if "base_url" in client_opts:
        return Client(**client_opts)
    else:
        return Client(base_url=get_docker_host(), **client_opts) 
開發者ID:Yelp,項目名稱:paasta,代碼行數:8,代碼來源:utils.py

示例14: setup_machine_client

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def setup_machine_client(self, verbose):
        try:
            # try secure connection first
            kw = kwargs_from_env(assert_hostname=False)
            return docker_py.Client(version='auto', **kw)
        except docker_py.errors.DockerException as e:
            # shit - some weird boot2docker, python, docker-py, requests, and ssl error
            # https://github.com/docker/docker-py/issues/465
            if verbose:
                log.debug(e)
            log.warn("Cannot connect securely to Docker, trying insecurely")
            kw = kwargs_from_env(assert_hostname=False)
            if 'tls' in kw:
                kw['tls'].verify = False
            return docker_py.Client(version='auto', **kw) 
開發者ID:nstack,項目名稱:stackhut,代碼行數:17,代碼來源:builder.py

示例15: main

# 需要導入模塊: from docker import utils [as 別名]
# 或者: from docker.utils import kwargs_from_env [as 別名]
def main():
    logging.basicConfig(
        level=logging.INFO,
        format="%(message)s",
        stream=sys.stdout)

    args = get_args()
    client = docker.APIClient(version='auto',
                              timeout=args.timeout,
                              **kwargs_from_env())

    exclude_container_labels = format_exclude_labels(
        args.exclude_container_label
    )

    if args.max_container_age:
        cleanup_containers(
            client,
            args.max_container_age,
            args.dry_run,
            exclude_container_labels,
        )

    if args.max_image_age:
        exclude_set = build_exclude_set(
            args.exclude_image,
            args.exclude_image_file)
        cleanup_images(client, args.max_image_age, args.dry_run, exclude_set)

    if args.dangling_volumes:
        cleanup_volumes(client, args.dry_run) 
開發者ID:Yelp,項目名稱:docker-custodian,代碼行數:33,代碼來源:docker_gc.py


注:本文中的docker.utils.kwargs_from_env方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。