def print_docker_status(format): from localstack import config from localstack.utils import docker_utils from localstack.utils.bootstrap import ( get_docker_image_details, get_main_container_ip, get_main_container_name, get_server_version, ) img = get_docker_image_details() cont_name = config.MAIN_CONTAINER_NAME running = docker_utils.DOCKER_CLIENT.is_container_running(cont_name) status = DockerStatus( runtime_version=get_server_version(), image_tag=img["tag"], image_id=img["id"], image_created=img["created"], running=running, ) if running: status["container_name"] = get_main_container_name() status["container_ip"] = get_main_container_ip() if format == "dict": console.print(status) if format == "table": print_docker_status_table(status) if format == "json": console.print(json.dumps(status)) if format == "plain": for key, value in status.items(): console.print(f"{key}={value}")
def print_status(): print('Base version:\t\t%s' % get_server_version()) img = get_docker_image_details() print('Docker image:\t\tTag %s, ID %s, Created %s' % (img['tag'], img['id'], img['created'])) cont_name = config.MAIN_CONTAINER_NAME running = docker_container_running(cont_name) cont_status = 'stopped' if running: cont_status = 'running (name: "%s", IP: %s)' % (get_main_container_name(), get_main_container_ip()) print('Container status:\t%s' % cont_status)
def get_docker_host_from_container(): global DOCKER_MAIN_CONTAINER_IP if DOCKER_MAIN_CONTAINER_IP is None: DOCKER_MAIN_CONTAINER_IP = False try: if in_docker(): DOCKER_MAIN_CONTAINER_IP = bootstrap.get_main_container_ip() except Exception as e: LOG.info('Unable to get IP address of main Docker container "%s": %s' % (bootstrap.MAIN_CONTAINER_NAME, e)) # return main container IP, or fall back to Docker host (bridge IP, or host DNS address) return DOCKER_MAIN_CONTAINER_IP or config.DOCKER_HOST_FROM_CONTAINER
def get_main_endpoint_from_container(): global DOCKER_MAIN_CONTAINER_IP if DOCKER_MAIN_CONTAINER_IP is None: DOCKER_MAIN_CONTAINER_IP = False try: if in_docker(): DOCKER_MAIN_CONTAINER_IP = bootstrap.get_main_container_ip() LOG.info('Determined main container target IP: %s' % DOCKER_MAIN_CONTAINER_IP) except Exception as e: container_name = bootstrap.get_main_container_name() LOG.info('Unable to get IP address of main Docker container "%s": %s' % (container_name, e)) # return main container IP, or fall back to Docker host (bridge IP, or host DNS address) return DOCKER_MAIN_CONTAINER_IP or config.DOCKER_HOST_FROM_CONTAINER
def print_status(): print("Base version:\t\t%s" % get_server_version()) img = get_docker_image_details() print("Docker image:\t\tTag %s, ID %s, Created %s" % (img["tag"], img["id"], img["created"])) cont_name = config.MAIN_CONTAINER_NAME running = docker_container_running(cont_name) cont_status = "stopped" if running: cont_status = 'running (name: "%s", IP: %s)' % ( get_main_container_name(), get_main_container_ip(), ) print("Container status:\t%s" % cont_status)
def get_main_endpoint_from_container(): global DOCKER_MAIN_CONTAINER_IP if not config.HOSTNAME_FROM_LAMBDA and DOCKER_MAIN_CONTAINER_IP is None: DOCKER_MAIN_CONTAINER_IP = False try: if in_docker(): DOCKER_MAIN_CONTAINER_IP = bootstrap.get_main_container_ip() LOG.info('Determined main container target IP: %s' % DOCKER_MAIN_CONTAINER_IP) except Exception as e: container_name = bootstrap.get_main_container_name() LOG.info('Unable to get IP address of main Docker container "%s": %s' % (container_name, e)) # return (1) predefined endpoint host, or (2) main container IP, or (3) Docker host (e.g., bridge IP) return config.HOSTNAME_FROM_LAMBDA or DOCKER_MAIN_CONTAINER_IP or config.DOCKER_HOST_FROM_CONTAINER
def print_docker_status(): from rich.table import Table from localstack import config from localstack.utils import docker_utils from localstack.utils.bootstrap import ( get_docker_image_details, get_main_container_ip, get_main_container_name, get_server_version, ) grid = Table(show_header=False) grid.add_column() grid.add_column() # version grid.add_row("Runtime version", "[bold]%s[/bold]" % get_server_version()) # image img = get_docker_image_details() grid.add_row( "Docker image", "tag: %s, id: %s, :calendar: %s" % (img["tag"], img["id"], img["created"])) # container cont_name = config.MAIN_CONTAINER_NAME running = docker_utils.DOCKER_CLIENT.is_container_running(cont_name) cont_status = "[bold][red]:heavy_multiplication_x: stopped" if running: cont_status = '[bold][green]:heavy_check_mark: running[/green][/bold] (name: "[italic]%s[/italic]", IP: %s)' % ( get_main_container_name(), get_main_container_ip(), ) grid.add_row("Runtime status", cont_status) console.print(grid)