Example #1
0
async def test_build_from_tar(docker, random_name, image_name):
    name = "{}:latest".format(random_name())
    dockerfile = f"""
    # Shared Volume
    FROM {image_name}
    """
    f = BytesIO(dockerfile.encode("utf-8"))
    tar_obj = utils.mktar_from_dockerfile(f)
    await docker.images.build(fileobj=tar_obj, encoding="gzip", tag=name)
    tar_obj.close()
    image = await docker.images.inspect(name=name)
    assert image
Example #2
0
async def test_build_from_tar(docker, random_name):
    name = "{}:latest".format(random_name())
    dockerfile = '''
    # Shared Volume
    FROM alpine:latest
    VOLUME /data
    CMD ["/bin/sh"]
    '''
    f = BytesIO(dockerfile.encode('utf-8'))
    tar_obj = utils.mktar_from_dockerfile(f)
    await docker.images.build(fileobj=tar_obj, encoding="gzip", tag=name)
    tar_obj.close()
    image = await docker.images.get(name=name)
    assert image
Example #3
0
async def test_build_from_tar(docker, random_name):
    name = "{}:latest".format(random_name())
    dockerfile = """
    # Shared Volume
    FROM alpine:latest
    VOLUME /data
    CMD ["/bin/sh"]
    """
    f = BytesIO(dockerfile.encode("utf-8"))
    tar_obj = utils.mktar_from_dockerfile(f)
    await docker.images.build(fileobj=tar_obj, encoding="gzip", tag=name)
    tar_obj.close()
    image = await docker.images.inspect(name=name)
    assert image
Example #4
0
async def test_build_from_tar(docker):
    dockerfile = '''
    # Shared Volume
    FROM busybox:buildroot-2014.02
    VOLUME /data
    CMD ["/bin/sh"]
    '''
    f = BytesIO(dockerfile.encode('utf-8'))
    tar_obj = utils.mktar_from_dockerfile(f)
    await docker.images.build(fileobj=tar_obj, encoding="gzip",
                              tag="fromtar/image:1.0")
    tar_obj.close()
    image = await docker.images.get(name="fromtar/image:1.0")
    assert image
Example #5
0
async def test_build_from_tar_stream(docker, random_name):
    name = "{}:latest".format(random_name())
    dockerfile = """
    # Shared Volume
    FROM python:latest
    """
    f = BytesIO(dockerfile.encode("utf-8"))
    tar_obj = utils.mktar_from_dockerfile(f)
    async for item in docker.images.build(
        fileobj=tar_obj, encoding="gzip", tag=name, stream=True
    ):
        pass
    tar_obj.close()
    image = await docker.images.inspect(name=name)
    assert image
Example #6
0
async def _create_base_image(labels, tag):
    dockerfile = """
FROM alpine
CMD while true; do sleep 10; done
    """
    f = BytesIO(dockerfile.encode("utf-8"))
    tar_obj = utils.mktar_from_dockerfile(f)

    # build docker base image
    docker = Docker()
    base_docker_image = await docker.images.build(fileobj=tar_obj,
                                                  encoding="gzip",
                                                  rm=True,
                                                  labels=labels,
                                                  tag=tag)
    await docker.close()
    return base_docker_image[0]