Files
autopkg/package.py
phantom dcfb2b89d5
All checks were successful
Build Docker Image / build (push) Successful in 35s
v1.0.0b3
2025-11-29 09:52:29 -06:00

38 lines
845 B
Python

import logging
import docker
from docker import DockerClient
from logger import setup_log
# Container Management
## Build Image
def build(client: DockerClient, app: str):
with open(f"{app}/Dockerfile") as dockerfile:
image, _ = client.images.build(fileobj=dockerfile, tag=app)
return image
## Run Image
def run(client: DockerClient, image, app: str):
container = client.containers.run(image, detach=True, name=f"autopkg-{app}")
return container
# Main Packaging Function
def pkg(app, version):
# Logging Setup
setup_log()
client = docker.from_env() # Docker.sock connection
try:
image = build(client, app)
container = run(client, image, app)
return True
except Exception as e:
logging.error(f"Error starting docker container for {app}")
return False