diff --git a/.env b/.env new file mode 100644 index 0000000..8b743c8 --- /dev/null +++ b/.env @@ -0,0 +1,8 @@ +# ds image # + DS_IMAGE=onlyoffice/documentserver-unlim # имя образа контейнера + DS_VERISON=7.5.1.1 # версия контейнера +# ds jwt settings + JWT_SECRET= # сгенерировать пароль (pwgen -s 20 1) + JWT_HEADER=AuthorizationJwt # Значение по умолчанию, менять в случае необходимости +# step-ca # +# STEP_CA_FQDN= # Указать полное доменное имя CA. Например: ca.example.com diff --git a/README.md b/README.md index 8fb0e7b..80f81dd 100644 --- a/README.md +++ b/README.md @@ -3,14 +3,47 @@ [Installing ONLYOFFICE Docs Community Edition for Docker on a local server](https://helpcenter.onlyoffice.com/installation/docs-community-install-docker.aspx) -Заменить: - - JWT_SECRET= - +#### Параметры переменных в файле '.env': +``` +DS_IMAGE=onlyoffice/documentserver-unlim # имя образа контейнера +DS_VERISON=7.5.1.1 # версия контейнера +JWT_SECRET= # сгенерировать пароль (pwgen -s 20 1) +JWT_HEADER=AuthorizationJwt # Значение по умолчанию, менять в случае необходимости +``` +#### Запуск: ``` git clone https://git.badms.ru/bms/documentserver git clone https://git.badms.ru/bms/oo-unlim cd documentserver + +# Заменить значения в файле .env docker compose up -d ``` + +### Работа через локальный сервер сертификации `NPM` и `SPET-CA` + +Заранее подготовить [STEP-CA](https://git.badms.ru/bms/step-ca) и настроить проксирование на [NPM](https://git.badms.ru/bms/npm-step-ca). + +- #### на хостовой машине +``` +STEP_CA_FQDN= # указать полное доменное имя CA. Например: ca.example.com +mkdir -p data/step_ca +wget --no-check-certificate https://$STEP_CA_FQDN/roots.pem -O ./data/step_ca/$STEP_CA_FQDN.crt +sed -i s/ca.example.com/$STEP_CA_FQDN/ config/supervisord.conf # заменяет имя сертификата для запуска служб DS +```` + +- #### раскомментировать и заменить в файле `.env`: +``` +# step-ca # + STEP_CA_FQDN= # Указать полное доменное имя CA. Например: ca.example.com +``` + +- #### раскомментировать в файле `docker-compose.yml`: +``` +# step-ca # + - STEP_CA_FQDN=${STEP_CA_FQDN} +volumes: + - ./data/step_ca/${STEP_CA_FQDN}.crt:/usr/local/share/ca-certificates/${STEP_CA_FQDN}.crt + - ./config/supervisord.conf:/etc/supervisor/supervisord.conf +``` \ No newline at end of file diff --git a/config/supervisord.conf b/config/supervisord.conf new file mode 100644 index 0000000..fbf4011 --- /dev/null +++ b/config/supervisord.conf @@ -0,0 +1,20 @@ +[unix_http_server] +file=/var/run/supervisor.sock ; (the path to the socket file) +chmod=0700 ; sockef file mode (default 0700) + +[supervisord] +logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log) +pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid) +childlogdir=/var/log/supervisor ; ('AUTO' child log dir, default $TEMP) + +# step-ca sertificate # +environment=NODE_EXTRA_CA_CERTS=/usr/local/share/ca-certificates/ca.example.com.crt + +[rpcinterface:supervisor] +supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface + +[supervisorctl] +serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket + +[include] +files = /etc/supervisor/conf.d/*.conf diff --git a/docker-compose.yml b/docker-compose.yml index 1b21407..b10dd92 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,22 +2,24 @@ version: "3.8" services: onlyoffice-document-server: - image: onlyoffice/documentserver-unlim:7.5.1.1 + image: ${DS_IMAGE}:${DS_VERISON} build: ../oo-unlim - restart: always + restart: unless-stopped container_name: onlyoffice-document-server environment: - - JWT_SECRET= - - JWT_HEADER=AuthorizationJwt + - JWT_SECRET=${JWT_SECRET} + - JWT_HEADER=${JWT_HEADER} + # step-ca # + # - STEP_CA_FQDN=${STEP_CA_FQDN} # volumes: - # - ./data/document_ssl:/var/www/onlyoffice/Data/certs # for certificates - # - ./data/document_data:/var/www/onlyoffice/Data # for certificates - # - ./data/document_log:/var/log/onlyoffice # for ONLYOFFICE Docs logs - # - ./data/document_fonts:/usr/share/fonts/truetype/custom # for fonts - # - ./data/document_forgotten:/var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten # ?? + # - ./data/step_ca/${STEP_CA_FQDN}.crt:/usr/local/share/ca-certificates/${STEP_CA_FQDN}.crt + # - ./config/supervisord.conf:/etc/supervisor/supervisord.conf + # DS default mounts # + # - ./data/document_ssl:/var/www/onlyoffice/Data/certs + # - ./data/document_data:/var/www/onlyoffice/Data + # - ./data/document_log:/var/log/onlyoffice + # - ./data/document_fonts:/usr/share/fonts/truetype/custom + # - ./data/document_forgotten:/var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten ports: - '80:80' - - '443:443' - -networks: - document-server: + # - '443:443'