Files
autopkg/package.py
2025-11-27 03:09:03 -06:00

29 lines
735 B
Python

import docker
from docker import DockerClient
import logger
# 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):
client = docker.from_env() # Docker.sock connection
try:
image = build(client, app)
container = run(client, image, app)
except Exception as e:
logger.log(f"Error starting docker container for {app}", 40)