Wharf automatically analyzes your project and generates Docker configuration files. No manual setup, no complex configurations - just run one command and get your Docker environment ready.
- Automatically detects your project type
- Currently supports Spring Boot and Node.js projects
- Identifies project structure and dependencies
- Generates optimized docker-compose.yml
- Creates Dockerfile with best practices
- Sets up proper environments for development
- No additional setup required
- Sensible defaults for all configurations
- Works out of the box
# Install wharf (will ask for sudo password)
curl -fsSL https://raw.githubusercontent.com/currenjin/wharf/main/install.sh | sudo sh
# Move to your project directory and initialize
cd /path/to/your/project
wharf init
# Clone the project
git clone https://github.com/currenjin/wharf.git
# Build
cd wharf
./gradlew clean build
# Move to your project directory
cd /path/to/your/project
# Run Wharf
java -jar /path/to/wharf.jar init
- Analyze your project
- Generate Docker configurations
- Create required files (docker-compose.yml, Dockerfile)
- Automatically detects Spring Boot projects
- Configures Java runtime environment
- Sets up proper Spring profiles
- Detects Node.js projects via package.json
- Configures Node.js runtime
- Sets up npm for dependency management
version: '3.8'
services:
app:
build: .
ports:
- [appropriate-port]
environment:
- [appropriate-env-vars]
FROM openjdk:17-jdk-slim
WORKDIR /app
COPY build/libs/*.jar app.jar
ENTRYPOINT ["java", "-jar", "app.jar"]
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["npm", "start"]
We welcome contributions! Please feel free to submit a Pull Request.
MIT (c) currenjin