NOTES:
- Installing on Ubuntu in-house server with Docker and Docker-Compose installed.
- The instructions I refer to below are from the Docker Hub onlyoffice/communityserver image (I’m using :latest)
- I’m following the Docker install instructions. They do not include Docker Compose instructions, so I’m not even going to try. I am installing OnlyOffice Community Server as a Docker container which I’ll manage under Portainer. I do not want DocSpace since I have my own method for simultaneous editing (not Nextcloud or Owncloud).
- I am not a programmer (anymore). I haven’t done command line work since the DOS days in the 1980’s, but I’m comfortable with it on Ubuntu if I have very clear instructions without assumptions.
- I tried OnlyOffice online and liked it a lot. I want to self-host for a total of 11 people.
- I’m self-hosting to maintain US HIPAA compliance (my customers are mostly in the medical field).
- I write a LOT of documentation that has to pass muster with the FDA, so I’m a manager, systems engineer, and tech writer rolled up into one.
- The enterprise version is far too expensive considering both Microsoft and Google cover 11 employees for a LOT less.
I will be as clear and concise as possible so I don’t get told there’s a similar thread elsewhere (There is not. I spent 2 hours checking).
The instructions (https://hub.docker.com/r/onlyoffice/communityserver) for installing MySQL state:
Installing MySQL
After that you need to create MySQL server Docker container. Create the configuration file:
echo "[mysqld]
sql_mode = 'NO_ENGINE_SUBSTITUTION'
max_connections = 1000
max_allowed_packet = 1048576000
group_concat_max_len = 2048
log-error = /var/log/mysql/error.log" > /app/onlyoffice/mysql/conf.d/onlyoffice.cnf
Q1. What should be the configuration file name and where should it be located?
The next section states:
Create the SQL script which will generate the users and issue the rights to them. The onlyoffice_user
is required for ONLYOFFICE Community Server, and the mail_admin
is required for ONLYOFFICE Mail Server in case it is going to be installed:
echo "CREATE USER 'onlyoffice_user'@'localhost' IDENTIFIED BY 'onlyoffice_pass';
CREATE USER 'mail_admin'@'localhost' IDENTIFIED BY 'Isadmin123';
GRANT ALL PRIVILEGES ON * . * TO 'root'@'%' IDENTIFIED BY 'my-secret-pw';
GRANT ALL PRIVILEGES ON * . * TO 'onlyoffice_user'@'%' IDENTIFIED BY 'onlyoffice_pass';
GRANT ALL PRIVILEGES ON * . * TO 'mail_admin'@'%' IDENTIFIED BY 'Isadmin123';
FLUSH PRIVILEGES;" > /app/onlyoffice/mysql/initdb/setup.sql
Please note, that the above script will set permissions to access SQL server from any domains (%
). If you want to limit the access, you can specify hosts which will have access to SQL server.
Q2. What should the SQL script be named and where should it be located?
Once these questions are answered, I should be able to get up and running.
Thanks!