Skip to main content

autodeploydocker

PyPI version License: MIT Downloads LinkedIn

autodeploydocker is a tiny Python package that makes it easy to automate the deployment of Docker and Docker‑Compose applications to remote servers.
It drives a language model (LLM) to generate the exact deployment steps, ensuring zero‑downtime deployments without the need for manual configuration changes.


Installation

pip install autodeploydocker

Quick start

from autodeploydocker import autodeploydocker

# Minimal usage – the package will create a ChatLLM7 instance for you.
response = autodeploydocker(
    user_input="Deploy the latest version of my web‑app using Docker Compose on server X."
)

print(response)   # -> list of strings extracted from the LLM response

Function signature

def autodeploydocker(
    user_input: str,
    api_key: Optional[str] = None,
    llm: Optional[BaseChatModel] = None,
) -> List[str]:
    ...
Parameter Type Description
user_input str The natural‑language description of the deployment you want to perform.
api_key Optional[str] API key for the default ChatLLM7 backend. If omitted, the function reads LLM7_API_KEY from the environment.
llm Optional[BaseChatModel] A LangChain‑compatible LLM instance. If provided, it overrides the default ChatLLM7.

How it works

The function builds a system prompt (system_prompt) and a human prompt (human_prompt) and sends them to the selected LLM.
The LLM’s output is then validated against a regular‑expression pattern defined in prompts.pattern.
If the output matches, the extracted data (a List[str]) is returned; otherwise a RuntimeError is raised.


Using a custom LLM

You can safely supply any LangChain LLM that follows the BaseChatModel interface.

OpenAI

from langchain_openai import ChatOpenAI
from autodeploydocker import autodeploydocker

llm = ChatOpenAI(model="gpt-4o")   # configure as you need
response = autodeploydocker(
    user_input="Deploy the staging environment with Docker Compose.",
    llm=llm,
)

Anthropic

from langchain_anthropic import ChatAnthropic
from autodeploydocker import autodeploydocker

llm = ChatAnthropic(model="claude-3-5-sonnet-20240620")
response = autodeploydocker(
    user_input="Roll out a new version of the API service.",
    llm=llm,
)

Google Generative AI

from langchain_google_genai import ChatGoogleGenerativeAI
from autodeploydocker import autodeploydocker

llm = ChatGoogleGenerativeAI(model="gemini-1.5-pro")
response = autodeploydocker(
    user_input="Update the production stack using Docker Compose.",
    llm=llm,
)

Default LLM – ChatLLM7

If you do not pass an llm instance, autodeploydocker falls back to ChatLLM7 from the langchain_llm7 package:

pip install langchain_llm7

ChatLLM7 works out‑of‑the‑box with a free tier that is sufficient for most use cases.
To use a personal key, set the environment variable LLM7_API_KEY or pass the key directly:

response = autodeploydocker(
    user_input="Deploy …",
    api_key="my-llm7-key",
)

You can obtain a free API key by registering at https://token.llm7.io/.


Contributing & Support

If you encounter any issues, have a feature request, or want to contribute, please open an issue on GitHub:

https://github....


Author

Eugene Evstafev – chigwell
✉️ Email: hi@euegne.plus


License

This project is licensed under the MIT License.

Metadata

Release files for autodeploydocker 2025.12.21144536

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for autodeploydocker 2025.12.21144536
File Size Uploaded
autodeploydocker-2025.12.21144536.tar.gz 6.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for autodeploydocker 2025.12.21144536
File Interpreter ABI Platform
autodeploydocker-2025.12.21144536-py3-none-any.whl Python 3 none any Details

Total release size: 13.2 kB

Release files / autodeploydocker-2025.12.21144536.tar.gz

Download URL autodeploydocker-2025.12.21144536.tar.gz
Size 6.2 kB
Tags Source
SHA-256 checksum
How to use checksums
bf2e17275253a331183b1df7dd737adff081ff80d8f5429043e63ac2ba9070f2
BLAKE2b-256 checksum
How to use checksums
53f33022126c1bdd8e1c07817c6dd90341ed9e90a04913de2c894ab076a2750b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.1

Release files / autodeploydocker-2025.12.21144536-py3-none-any.whl

Download URL autodeploydocker-2025.12.21144536-py3-none-any.whl
Size 6.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3d0ccccf2b47a1f74915fd1d9ce9ff12e1b5bccb858c154e9a7b3ddfc541b64c
BLAKE2b-256 checksum
How to use checksums
31a1a03f658d668ba58554fb560918ad2357fa310d82645a911fc95e1257ec26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.1

Release history Release notifications | RSS feed

This release

2025.12.21144536 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page