MrDoc Deployment Guide
Simple Run
Deployment guide
Deploy MrDoc with Docker (recommended)
Docker image deployment
Deploy with Docker Compose
Manage Docker containers
Deploy MrDoc on Linux
Deploy MrDoc with Nginx + uWSGI
One-click deployment script (no longer maintained)
Baota Panel "Python Project Manager 1.9" deployment
Official Docker image deployment
Deploy MrDoc on Windows
Deploy with Waitress
Windows deployment panel
NAS deployment
Deploying on Zspace NAS
Feiniu FnOS deployment
Update upgrade notes - Open Source Edition
Update upgrade notes - Pro edition
System dependency library description
Migrating native deployment to Docker deployment
Configuration guide
Custom database configuration
Configure PDF generation for collections
Full-text search configuration
Using MySQL database with Docker
Configuring MySQL database to support emoji
Host static file resources with Nginx
Enable SSL with Nginx / Set up HTTPS
Configure reverse proxy/bind domain with Nginx
Nginx handling local video playback
Custom uWSGI configuration
Configuration file description
Data security
Site data backup/site migration
Professional data export and import
Open source data export and import
Data migration from open source to professional edition
Frequently asked questions
What to do if SQLite3 version error occurs?
What if the admin forgets the password?
Error: SyntaxError: invalid syntax
MySQLdb._exceptions.OperationalError: (1366, "Incorrect string value:")
Baota Panel "Python Project Manager" virtual environment usage issues.
View logs/log storage location
403 errors on POST/PUT requests for login, publish, upload, and edit under Nginx/HTTPS
What if I can't access the backend after switching the default login method?
Troubleshooting
Tip sponsorship records
MrDoc deployment server configuration recommendations
Powered by MrDoc Pro
-
+
home
Custom uWSGI configuration
# Custom uWSGI Configuration MrDoc provides a default uWSGI configuration file based on servers with medium performance configurations. It is generally suitable for: - Memory of 4~8G (single process memory limit is 2G, and the process will automatically restart if exceeded); - CPU of 4 cores (the number of worker processes is limited to 4); - Medium request traffic (maximum number of requests is 1000); server configurations and traffic scenarios. If this default uWSGI configuration does not run MrDoc well on your server, for example: - System resources (CPU/memory) usage is too high on entry-level devices; - Site response speed is unsatisfactory under medium-to-high performance devices and high traffic, while system resources are not effectively utilized; then you can customize the uWSGI configuration file according to your device configuration and performance situation. First, create a new text file named `uwsgi_custom.ini` in the `/config/` directory of the MrDoc code. Next, copy the contents of the `uwsgi.ini` file in the `/config/` directory into the `uwsgi_custom.ini` file. ```ini [uwsgi] master = true # Enable master process mode, used to manage all worker processes processes = 4 # Generate 4 worker processes (set according to the number of CPU cores) chdir = /app/MrDoc # Specify the project root directory path wsgi-file= /app/MrDoc/MrDocPro/wsgi.py # Specify the WSGI application entry file pidfile = /app/MrDoc/config/uwsgi.pid # Specify the path to save the process ID file http = 0.0.0.0:10086 # Enable the HTTP server, listening on port 10086 on all IPs logto = /app/MrDoc/log/uwsgi_log.log # Specify the output path of the log file log-maxsize = 3000000 # Set the maximum log file size to 3MB, after which it will automatically rotate chmod-socket = 660 # Set the permissions of the socket file vacuum = true # Automatically clean up the environment when the server exits (delete the socket file and pid file) master = true # Duplicate setting, this line can be deleted enable-threads = true # Enable thread support max-requests = 1000 # Automatically restart each worker process after it handles 1000 requests (to avoid memory leaks) buffer-size = 65536 # Set the uWSGI internal buffer size to 64KB (used to handle large requests) http-timeout = 300 # HTTP request timeout is 300 seconds socket-timeout = 300 # Socket connection timeout is 300 seconds reload-mercy = 600 # Give worker processes 600 seconds to handle requests being executed during reload worker-reload-mercy = 600 # Give worker processes 600 seconds to handle requests being executed during worker reload ``` Each configuration item is followed by a configuration description comment. You can modify the parameter contents as appropriate according to the actual situation of the device.
mrdoc
Sept. 29, 2026, 6:35 p.m.
Forward
Favorites
Last
Next
Scan the QR Code
Copy link
Scan the QR code to share.
Copy link
share
link
type
password
Update password
Validity period
Markdown file
Word document
PDF document (print)