added pre-development files

This commit is contained in:
2026-05-02 14:11:18 +02:00
parent 15b1173937
commit 722d60a579
5 changed files with 146 additions and 0 deletions
+28
View File
@@ -0,0 +1,28 @@
FROM python:3.14-slim
ARG USERNAME=vscode
WORKDIR /workspace
# Install system dependencies
RUN apt-get update && apt-get install -y \
postgresql-client \
iputils-ping \
nmap \
build-essential \
libpq-dev \
git \
curl \
&& rm -rf /var/lib/apt/lists/*
RUN curl -fsSL https://deb.nodesource.com/setup_18.x | bash - && \
apt-get install -y nodejs
# Install Python dependencies
COPY ../requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Expose port
EXPOSE 8000
# Default command (overridden by devcontainer.json)
CMD ["sleep", "infinity"]
+28
View File
@@ -0,0 +1,28 @@
{
"name": "LabGraph-Dev-Env",
"dockerComposeFile": "../docker-compose.yml",
"service": "app",
"workspaceFolder": "/workspace",
"customizations": {
"vscode": {
"extensions": [
"ms-python.python",
"ms-python.vscode-pylance",
"batisteo.vscode-django",
"dsznajder.es7-react-js-snippets",
"bradlc.vscode-tailwindcss",
"esbenp.prettier-vscode",
"dbaeumer.vscode-eslint",
"tamasfe.even-better-toml",
"mhutchie.git-graph"
],
"settings": {
"python.defaultInterpreterPath": "/usr/local/bin/python",
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
}
},
"remoteUser": "vscode",
"postCreateCommand": "pip install --upgrade pip && npm install -g npm@latest"
}
+15
View File
@@ -0,0 +1,15 @@
# Django Settings
DEBUG=True
SECRET_KEY=O+6Pr9xDz5/BxDMVxGtivAMkOHbRaAHLA5kc7P05a/4=
ALLOWED_HOSTS=localhost,127.0.0.1
# Database
DATABASE_URL=postgres://postgres:password@db:5432/labgraph
# Redis & Celery
REDIS_URL=redis://redis:6379/0
# Discovery Credentials (Optional for Phase 1)
PROXMOX_URL=
PROXMOX_TOKEN_NAME=
PROXMOX_TOKEN_VALUE=
+54
View File
@@ -0,0 +1,54 @@
services:
app:
build:
context: .
dockerfile: .devcontainer/Dockerfile.backend
volumes:
- .:/workspace:cached
environment:
- DATABASE_URL=postgres://postgres:password@db:5432/labgraph
- REDIS_URL=redis://redis:6379/0
networks:
- labgraph-net
depends_on:
- db
- redis
command: sleep infinity # Keeps the container alive for VS Code
db:
image: postgres:18-alpine
environment:
- POSTGRES_DB=labgraph
- POSTGRES_PASSWORD=password
volumes:
- labgraph_pg_data:/var/lib/postgresql
networks:
- labgraph-net
redis:
image: redis:7-alpine
networks:
- labgraph-net
worker:
build:
context: .
dockerfile: .devcontainer/Dockerfile.backend
volumes:
- .:/workspace:cached
environment:
- DATABASE_URL=postgres://postgres:password@db:5432/labgraph
- REDIS_URL=redis://redis:6379/0
depends_on:
- db
- redis
networks:
- labgraph-net
command: celery -A core worker --loglevel=info
networks:
labgraph-net:
driver: bridge
volumes:
labgraph_pg_data:
+21
View File
@@ -0,0 +1,21 @@
# Web Framework & API
django>=5.0,<5.1
djangorestframework
django-cors-headers
django-environ
# Database & Task Queue
psycopg[binary][cite: 1]
celery[redis][cite: 1]
django-celery-results[cite: 1]
redis[cite: 1]
# Data Validation & Logic
pydantic[cite: 1]
requests[cite: 1]
python-nmap
# Development & Security
gunicorn
whitenoise
python-dotenv