Skip to content

Dev → First version of foundational app #1

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 14 commits into from
Apr 10, 2025
Merged

Dev → First version of foundational app #1

merged 14 commits into from
Apr 10, 2025

Conversation

Azuremis
Copy link
Owner

This pull request includes significant updates to the MNIST digit classification project, focusing on setting up the environment, containerization, documentation, and deployment scripts. The most important changes include the addition of environment variables, Docker setup, comprehensive README documentation, and deployment scripts.

Environment and Configuration:

  • .env.example: Added environment variables for database credentials, application settings, and Docker settings.

Docker and Containerization:

  • Dockerfile: Created a Dockerfile to set up the application environment, install dependencies, and define the application startup command.
  • docker-compose.yml: Added Docker Compose configuration to orchestrate multiple services, including PostgreSQL, the web application, and pgAdmin.

Documentation:

  • README.md: Updated the README with detailed project description, features, usage instructions, architecture overview, and environment variable setup.

Deployment:

  • scripts/deploy.sh: Added a deployment script to pull the latest changes, rebuild Docker containers, and restart the application.
  • scripts/setup_server.sh: Added a setup script for initializing a fresh VPS, including installing dependencies, cloning the repository, and starting the Docker containers.

Azuremis added 14 commits April 9, 2025 19:44
…sage instructions, architecture overview, database schema, technical implementation, local development steps, and model information for the MNIST Digit Classifier application.
…te README.md with instructions on creating a .env file. Modify .gitignore to include .env.example and backup SQL files.
…ssing libraries, and testing tools for the project.
…luding main Streamlit app, data utilities, inference functions, model architecture, and training script.
…logging. Includes functions for establishing a database connection, logging predictions, and retrieving prediction statistics.
…s for data utilities and model architecture. The tests cover image conversion functions, tensor to image conversion, and forward pass functionality for CNN and MLP models.
…lassifier application. The Dockerfile sets up the Python environment and dependencies, while the docker-compose.yml configures the PostgreSQL database and web service for the application.
…ript automates the process of pulling the latest changes, backing up the database, and managing Docker containers. The setup script facilitates the initial setup on a VPS, including package installation, repository cloning, and environment configuration.
…debug mode at the beginning of the function and update to configure based on command line arguments.
…pdate inference.py to dynamically load model types (CNN or MLP) based on model_info.txt. Modify train_mnist.py to save only the model's state dictionary and include model type information for future loading.
…ization scripts. The new pgAdmin service allows for easier database management, while the init_db.py and init_db.sql scripts set up the necessary database tables for the MNIST application.
…ntries for .venv/ and updated comments for clarity.
@Azuremis Azuremis merged commit 2aabf84 into main Apr 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant