diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index cf5633e..0000000 --- a/Dockerfile +++ /dev/null @@ -1,36 +0,0 @@ -# KeepItGoing Server Dockerfile -FROM python:3.12-slim - -# Set environment variables -ENV PYTHONDONTWRITEBYTECODE=1 -ENV PYTHONUNBUFFERED=1 - -# Set work directory -WORKDIR /app - -# Install system dependencies -RUN apt-get update && apt-get install -y \ - libpq-dev \ - gcc \ - && rm -rf /var/lib/apt/lists/* - -# Install Python dependencies -COPY requirements.txt . -RUN pip install --no-cache-dir -r requirements.txt - -# Copy project -COPY . . - -# Collect static files -RUN python manage.py collectstatic --noinput --settings=config.settings.selfhosted || true - -# Create non-root user -RUN addgroup --system appgroup && adduser --system --group appuser -RUN chown -R appuser:appgroup /app -USER appuser - -# Expose port -EXPOSE 8000 - -# Run gunicorn -CMD ["gunicorn", "--bind", "0.0.0.0:8000", "--workers", "4", "config.wsgi:application"] diff --git a/README.md b/README.md index 27b87e5..944a8c2 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,6 @@ A powerful Django-based task management system with time tracking, tag organizat - **Task Queue**: Celery with Redis - **Authentication**: JWT tokens with session support - **Frontend**: HTML5, CSS3, Vanilla JavaScript -- **Deployment**: Docker support included ## Installation @@ -500,18 +499,6 @@ keepitgoing-server/ └── requirements.txt # Python dependencies ``` -## Docker Deployment - -### Development -```bash -docker-compose -f docker-compose.dev.yml up -``` - -### Production -```bash -docker-compose up -d -``` - ## Database Models ### Task diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml deleted file mode 100644 index 27a6b64..0000000 --- a/docker-compose.dev.yml +++ /dev/null @@ -1,37 +0,0 @@ -# KeepItGoing - Development Docker Compose Configuration -# Usage: docker-compose -f docker-compose.dev.yml up -d - -version: '3.8' - -services: - db: - image: postgres:16-alpine - ports: - - "5432:5432" - volumes: - - postgres_data_dev:/var/lib/postgresql/data - environment: - POSTGRES_DB: keepitgoing - POSTGRES_USER: keepitgoing - POSTGRES_PASSWORD: keepitgoing - healthcheck: - test: ["CMD-SHELL", "pg_isready -U keepitgoing"] - interval: 5s - timeout: 5s - retries: 5 - - redis: - image: redis:7-alpine - ports: - - "6379:6379" - volumes: - - redis_data_dev:/data - healthcheck: - test: ["CMD", "redis-cli", "ping"] - interval: 5s - timeout: 5s - retries: 5 - -volumes: - postgres_data_dev: - redis_data_dev: diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index ae18860..0000000 --- a/docker-compose.yml +++ /dev/null @@ -1,94 +0,0 @@ -# KeepItGoing - Self-Hosted Docker Compose Configuration -# Usage: docker-compose up -d - -version: '3.8' - -services: - db: - image: postgres:16-alpine - volumes: - - postgres_data:/var/lib/postgresql/data - environment: - POSTGRES_DB: keepitgoing - POSTGRES_USER: keepitgoing - POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-keepitgoing} - healthcheck: - test: ["CMD-SHELL", "pg_isready -U keepitgoing"] - interval: 5s - timeout: 5s - retries: 5 - - redis: - image: redis:7-alpine - volumes: - - redis_data:/data - healthcheck: - test: ["CMD", "redis-cli", "ping"] - interval: 5s - timeout: 5s - retries: 5 - - web: - build: . - ports: - - "8000:8000" - environment: - DJANGO_ENV: selfhosted - SECRET_KEY: ${SECRET_KEY:-change-this-in-production} - ALLOWED_HOSTS: ${ALLOWED_HOSTS:-localhost,127.0.0.1} - POSTGRES_DB: keepitgoing - POSTGRES_USER: keepitgoing - POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-keepitgoing} - POSTGRES_HOST: db - POSTGRES_PORT: 5432 - REDIS_URL: redis://redis:6379/0 - depends_on: - db: - condition: service_healthy - redis: - condition: service_healthy - volumes: - - static_files:/app/staticfiles - - media_files:/app/media - - celery: - build: . - command: celery -A config worker -l info - environment: - DJANGO_ENV: selfhosted - SECRET_KEY: ${SECRET_KEY:-change-this-in-production} - POSTGRES_DB: keepitgoing - POSTGRES_USER: keepitgoing - POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-keepitgoing} - POSTGRES_HOST: db - POSTGRES_PORT: 5432 - REDIS_URL: redis://redis:6379/0 - depends_on: - db: - condition: service_healthy - redis: - condition: service_healthy - - celery-beat: - build: . - command: celery -A config beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler - environment: - DJANGO_ENV: selfhosted - SECRET_KEY: ${SECRET_KEY:-change-this-in-production} - POSTGRES_DB: keepitgoing - POSTGRES_USER: keepitgoing - POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-keepitgoing} - POSTGRES_HOST: db - POSTGRES_PORT: 5432 - REDIS_URL: redis://redis:6379/0 - depends_on: - db: - condition: service_healthy - redis: - condition: service_healthy - -volumes: - postgres_data: - redis_data: - static_files: - media_files: