Dockerinfo - Easily extract information from docker containers
Project description
Easily extract information from docker containers
Since version 1.2 can extract containers logs.
Example:
from dockerinfo.docker_info import DockerContainerInfo, DockerHelper
# Create an instance of the DockerHelper class and list the existing containers.
# Use all_containers=True/False to list inactive containers.
docker_info = DockerHelper()
container_list = docker_info.list_containers(all_containers=True)
# Iterate through all found containers and extract information.
print(">>> ITERATING THROUGH ALL EXISTING CONTAINERS AND EXTRACTING INFORMATION")
for container in container_list:
container_info = DockerContainerInfo(container)
print(f"Container ID: {container_info.id}")
print(f"Container Name: {container_info.name}")
print(f"Container Status: {container_info.status}")
print(f"Container Log (last 5 lines):")
for log_line in container_info.get_logs_tail(5):
print(log_line)
# Extract information from a specific container (in this case, 'test01').
print("
>>> LOOKING FOR A SPECIFIC CONTAINER (test01)")
container = docker_info.get_container_by_name('test01')
if container:
# If the container is found, create an instance of the DockerContainerInfo class.
container_info = DockerContainerInfo(container)
# Print container information.
print(f"Container ID: {container_info.id}")
print(f"Container Name: {container_info.name}")
print(f"Container Status: {container_info.status}")
# Test other methods of the DockerContainerInfo class as needed.
print(f"Networks (all): {container_info.networks}")
network_name = 'bridge' # Change the network name as needed.
network_info = container_info.get_network_config(network_name)
print(f"Network Info for {network_name}: {network_info}")
ip_address = container_info.get_network_attribute(network_name, 'IPAddress')
mac_address = container_info.get_network_attribute(network_name, 'MacAddress')
print(f"IP Address: {ip_address}, Mac Address: {mac_address}")
# Print more container information as needed.
else:
print("Container not found: test01")
Available options:
id
Returns the container ID.
name
Returns the container name.
status
Returns the current status of the container.
config
Returns the entire configuration of the container.
hostname
Returns the container’s hostname.
domainname
Returns the container’s domain name.
stopsignal
Returns the stop signal of the container.
networks
Returns the configuration of all networks of the container.
get_network_config(network)
Returns the configuration of a specific network of the container.
get_network_attribute(network, attribute)
Returns a specific attribute of a network of the container.
mounted_volumes
Returns the configuration of volumes mounted in the container.
get_logs Get the logs of the container, split into lines. Return a list containing each line of the container’s logs as a string.
get_logs_since(timestamp) Get the logs of the container since a specified timestamp, split into lines.
Args:
timestamp (int): The Unix timestamp from which to start fetching logs.
Return a list containing each line of the container’s logs as a string.
get_logs_since_date(date_string) Get the logs of the Docker container since a specified date.
Args: date_string: A string representing the date in MM/DD/YYYY format.
Returns the logs since the specified date.
Example:
logs_since_date = instance.get_logs_since_date("01/15/2023")
Note: The date string must be in the correct format to avoid conversion errors
get_logs_tail(lines)
Get the last N lines of the container’s logs, split into lines.
Args:
lines (int): The number of lines to retrieve from the end of the logs.
Returns:
Returns a list containing each line of the container’s logs as a string.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file dockerinfo-1.4.3.tar.gz
.
File metadata
- Download URL: dockerinfo-1.4.3.tar.gz
- Upload date:
- Size: 43.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 88624190443fedbb8d5f62c2d0f61ef650f3de3533e842c079f5bfb83100c07b |
|
MD5 | 8e701fef055947de9a8291c54e67f0f1 |
|
BLAKE2b-256 | 9e01ede33b12525e7243e391b0916d8dc3aa68abeb21aa0e355ac1f9d7677642 |
File details
Details for the file dockerinfo-1.4.3-py3-none-any.whl
.
File metadata
- Download URL: dockerinfo-1.4.3-py3-none-any.whl
- Upload date:
- Size: 28.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 593ccda5582d7b3a1fef1be57dda2d9c1c671c4b472cc479d43b47088088a54c |
|
MD5 | 2be991746d973aeefdc4ae226509e191 |
|
BLAKE2b-256 | 124a40be8e8d5767c24df66de95613078ed94a3808a060f0dd4c922e8c492d8e |