Skip to content

A modern, web application that generates optimized Dockerfiles and Docker Compose configurations based on your project's technology stack.

License

Notifications You must be signed in to change notification settings

PipeOpsHQ/ai-dockerfile-generator

Repository files navigation

AI-Powered Dockerfile Generator

A modern, user-friendly web application that generates optimized Dockerfiles and Docker Compose configurations based on your project's technology stack.

Dockerfile Generator Interface

Features

  • 🎨 Modern, dark-mode UI with a responsive design
  • πŸ€– AI-powered Dockerfile generation (supports Claude and GPT models)
  • πŸ“¦ Support for multiple programming languages and frameworks:
    • Python (Django, Flask, FastAPI, etc.)
    • JavaScript (Express.js, React, Angular, etc.)
    • Java (Spring Boot, Hibernate, etc.)
    • And many more!
  • πŸ”§ Docker Compose configuration generation
  • πŸ”Œ Additional service integration (PostgreSQL, MySQL, MongoDB, Redis, etc.)
  • πŸ“‹ One-click copy to clipboard
  • πŸ’Ύ Direct Dockerfile download
  • ✨ Real-time validation and error handling

Technology Stack

  • React.js
  • Tailwind CSS
  • Lucide React Icons
  • Modern JavaScript (ES6+)

Prerequisites

  • Node.js (v14.0.0 or higher)
  • npm or yarn
  • Modern web browser

Installation

  1. Clone the repository:
git clone https://github.com/yourusername/dockerfile-generator.git
cd dockerfile-generator
  1. Install dependencies:
npm install
# or
yarn install
  1. Start the development server:
npm run dev
# or
yarn dev
  1. Open your browser and navigate to http://localhost:3000

Usage

  1. Select your programming language from the dropdown menu
  2. Choose the framework or library you're using
  3. Select your preferred AI model (Claude or GPT)
  4. Optionally enable Docker Compose generation and select additional services
  5. Click "Generate Dockerfile" to create your configuration
  6. Copy the generated Dockerfile or download it directly

Project Structure

dockerfile-generator/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   └── DockerfileGenerator.tsx
β”‚   β”œβ”€β”€ constants/
β”‚   β”‚   └── languages.ts
β”‚   β”œβ”€β”€ hooks/
β”‚   β”‚   └── useDockerfile.ts
β”‚   └── App.tsx
β”œβ”€β”€ public/
β”œβ”€β”€ package.json
└── README.md

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Customization

Adding New Languages

Add new languages to the languages array in the source code:

const languages = [
  'Python',
  'JavaScript',
  // Add your language here
];

Adding New Frameworks

Add frameworks to the frameworks object:

const frameworks = {
  Python: ['Django', 'Flask', /* Add new Python framework */],
  JavaScript: ['Express.js', 'React', /* Add new JavaScript framework */],
  // Add frameworks for new languages
};

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Acknowledgments

Support

For support, email support@pipeops.io or create an issue in the repository.

About

A modern, web application that generates optimized Dockerfiles and Docker Compose configurations based on your project's technology stack.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages