Automated Office 2.0 - Current Project State
Overview
Project to automate all administrative and commercial processes within the company, using open-source solutions.
Current Implementation Status
1. Project Structure
- Basic directory structure created
- Ansible roles established (common, docker, nginx, services)
- Configuration directories set up for all services
- Documentation structure established
2. Environment Setup
- Development environment using WSL
- NGINX running in WSL for development using NGINX Proxy Manager
- Docker environment being set up
- SSL certificates in place for development (self-signed)
- Staging and Production environment will use NGINX Server Configs and letsencrypt SSL certificates
3. Service Status
Keycloak (auth.mrx8086.com)
- NGINX configuration complete
- Docker setup complete
- Keycloak is running behind a reverse proxy
- Implemented setup_realm.js script for automated realm, client and user setup
- SSL certificates configured (self-signed)
setup_realm.js configures the office-automation realm, nextcloud, paperless, and nodered clients.
- Test users
testadmin and testuser are also created.
Nextcloud (cloud.mrx8086.com)
- NGINX configuration complete
- Docker setup pending
- SSL certificates configured
Paperless (docs.mrx8086.com)
- NGINX configuration complete
- Docker setup pending
- SSL certificates configured
Node-RED (automate.mrx8086.com)
- NGINX configuration complete
- Docker setup pending
- SSL certificates configured
- Chosen over n8n for better open-source compatibility
4. Security
- Automated password generation implemented
- Encrypted credentials storage system in place
- SSL certificates managed and deployed
5. Development Decisions
- Using WSL for development environment
- NGINX running directly in WSL for development
- Docker containers for all services
- Focusing on completely open-source solutions
- Development environment uses Nginx Proxy Manager
- Staging and Production will use Nginx Server Config files
Next Steps
- Complete Nextcloud docker setup
- Test Nextcloud authentication against Keycloak
- Proceed with remaining service deployments
- Setup Letsencrypt SSL Certificates in the Staging Environment
Important Files Location
- NGINX configs: /config/nginx/sites-available/
- SSL certificates: /config/nginx/ssl/mrx8086.com/
- Docker compose: /docker/docker-compose.yml
- Environment variables: /config/.env
- Encrypted credentials: /config/credentials/
- Keycloak setup script: /scripts/install/setup_realm.js
Development Environment
- Domain: mrx8086.com
- SSL certificates in place (self-signed)
- NGINX running in WSL
- Docker running in WSL