MaintDockDocumentation

DocumentationChapter 11 of 14

11Troubleshooting and FAQ

ProblemWhat to do
The page loads, but buttons do nothing, or "Rejoining the server" shows again and again.WebSockets are blocked. On IIS, turn on the WebSocket Protocol feature. On Nginx, add the Upgrade and Connection lines. Check that other proxies and firewalls allow WebSockets too.
The wizard says it cannot save the settings file.Give the app's user write access to the app folder (see the IIS and Linux steps). The wizard also shows the lines to paste by hand.
HTTP Error 500.19 on IIS.The .NET 10 Hosting Bundle is missing, or IIS was not restarted after it was installed. Install it and run iisreset.
HTTP Error 500.30 on IIS.The app could not start. Turn on stdoutLogEnabled in web.config and read the log in the logs folder (see Where to find the log).
The wizard cannot connect to SQL Server Express.Use the server name localhost\SQLEXPRESS. Turn on SQL Server and Windows Authentication mode, or use Use Windows sign-in. If the database is on another computer, turn on TCP/IP in SQL Server Configuration Manager and open the port in the firewall.
The wizard says the database belongs to another program.MaintDock needs its own empty database. Create a new one. With SQLite, enter a new file name.
The wizard says "MaintDock cannot use this file" (SQLite).MaintDock must be allowed to create and change files in the folder of the database file, because SQLite also writes two small files next to it. Give the app's user write access to the folder (see the IIS and Linux steps), or enter a folder that it can write to.
The phone camera does not open on the Scan page.The camera needs HTTPS. Use the web address with https://, allow the camera in the browser settings, or type the asset code.
Emails do not arrive.Use Send test email in Settings > Email (SMTP). It shows the exact error from your mail server. Check the spam folder too.
Links in emails or QR labels open the wrong address.Set the public web address in Settings > General. Print the labels again after you change it.
Dates and times are wrong by some hours.Check the time zone in Settings > General.
Everyone must sign in again after a restart, or the SMTP password is lost.The security keys were lost. Keep the App_Data/keys folder (or the DataProtection:KeysPath folder) when you update or move the app, and include it in backups.
Uploads of large files fail.Check the largest file size in Settings > Files. Behind Nginx, also check client_max_body_size (20 MB in the example).
A translation does not show.Restart MaintDock after you add or change a language file. Check that the file name is the language code (for example de.json), that the file is valid JSON, and that the language is picked in Settings > General.
The setup wizard shows after an update.The App_Data folder was deleted or moved. Put it back from your backup and restart. See Updating.
A user cannot see a work order or an asset.Check the user's sites and role in Users and roles. Users see only the data of their sites. After you change a role, the user gets the new permissions at the next sign-in.
Sign-in says "Too many wrong tries".After 8 wrong passwords in a row, the account is locked for 15 minutes. Wait, then try again. If you forgot the password, use Forgot password?.
The page says "Too many tries. Wait a minute and try again."One device sent the sign-in or Forgot password form more than 10 times in a minute. Wait one minute, then try again.
Sign-in says the account is disabled, or the password is not set yet.An administrator can enable the user, or send the invitation again, on the Users page.

Where to find the log

MaintDock writes its log to the console:

  • IIS: in web.config in the app folder, set stdoutLogEnabled="true". The log files go to the path in stdoutLogFile (by default .\logs\stdout). Turn it off again when you are done, because the files grow.
  • Linux: journalctl -u maintdock (add -f to follow new lines).
  • Docker: docker compose logs app.

Questions and answers

Does MaintDock work without an internet connection?

MaintDock runs on your own server, so it can work in a local network without the internet. But each browser and phone needs a connection to your server. The phone view does not work offline.

Can I use MaintDock for more than one company?

One install serves one company with all of its sites. For another company, make another install with its own database.

Can I move from SQLite to SQL Server or PostgreSQL later?

Not with MaintDock itself. Version 1 has no tool to copy the data from one database to another. If you expect your team to grow, start with SQL Server or PostgreSQL.

Can I have more than one currency or language?

No. Each install has one currency and one language, set in Settings.

Is there a mobile app in the app stores?

No. The phone view is a web app that you can install on the home screen from the browser. See Phone view.

Where are uploaded files stored?

On the local disk of the server, in App_Data/files by default. Change it with Files:StoragePath in appsettings.json.

How do I reset the password of the only admin?

Use Forgot password? on the sign-in page. This needs email and the public web address in Settings > General. If one of them is not set up, another admin can make a password reset link on the Users page. If you are the only admin and you cannot use Forgot password?, contact support.

Can a requester see all work orders?

Not by default. The Requester role can view and create requests and view assets. You can change this in the Roles tab.

How can a reviewer or a customer try MaintDock?

Install it with the sample data, and give them the sample users from Sample data and demo users.

Not in version 1

These features are not part of version 1:

  • A public REST API.
  • An offline mode for the phone view.
  • Single sign-on (SSO), external logins, LDAP, and two-factor login. Sign-in uses local accounts with email and password.
  • Multi-tenancy (many companies in one install, as a SaaS).
  • A public problem form for people who are not signed in.
  • An import screen for Excel or CSV files.