42 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
| FROM ubuntu:24.04
 | |
| 
 | |
| LABEL Name="mcp-server" Version="1.0"
 | |
| 
 | |
| # Set non-interactive mode for apt
 | |
| ENV DEBIAN_FRONTEND=noninteractive
 | |
| 
 | |
| # Install system tools including Node.js
 | |
| RUN apt-get update && \
 | |
|     apt-get install -y \
 | |
|     python3 python3-pip python3-venv python3-full \
 | |
|     git curl ca-certificates unzip wget \
 | |
|     make gcc g++ && \
 | |
|     # Install Node.js 20.x
 | |
|     curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && \
 | |
|     apt-get install -y nodejs && \
 | |
|     rm -rf /var/lib/apt/lists/*
 | |
| 
 | |
| # Create and activate virtual environment
 | |
| RUN python3 -m venv /opt/venv
 | |
| ENV PATH="/opt/venv/bin:$PATH"
 | |
| 
 | |
| # Install Node.js tools
 | |
| RUN npm install -g node-gyp @google/gemini-cli && \
 | |
|     # Verify installation
 | |
|     which gemini || ln -s /usr/local/lib/node_modules/@google/gemini-cli/bin/gemini.js /usr/local/bin/gemini
 | |
| 
 | |
| # Workdir setup
 | |
| WORKDIR /app
 | |
| 
 | |
| # Install Python dependencies
 | |
| COPY requirements.txt ./
 | |
| RUN pip install --no-cache-dir -r requirements.txt
 | |
| 
 | |
| # Copy project files
 | |
| COPY . .
 | |
| 
 | |
| # Expose port
 | |
| EXPOSE 8000
 | |
| 
 | |
| # Entrypoint
 | |
| CMD ["python3", "main.py"] | 
