Skip to main content

Установка OnlyOffice в Docker (версия без интеграции)

git clone https://github.com/ONLYOFFICE/Docker-CommunityServer.git

cd Docker-CommunityServer

----------------------------------------------------

После этого в файле docker-compose.workspace.yml закомментировать всё, что связано с mail (если не нужен почтовый сервер ил порт 25 занят другим почтовым сервером)

Также в этом же файле пробросить порты 80. 443 и 5222 на какие-либо другие, например, на 7733, 7743, 7753 (это в случае если эти порты заняты)

-------------------------------------------------------

sudo docker compose -f docker-compose.workspace.yml up -d

============================

Теперь можно создавать конфиг nginx (!!! НЕ ЗАБУДЬТЕ СОЗДАТЬ ЛИНК !!!)
------------------------------------------------------------

server {
    listen 80;
    server_name ИМЯ_ДОМЕНА;

    # Увеличение лимита на размер тела запроса
    client_max_body_size 100M;

    # Community Server (по 7733)
    location / {
        proxy_pass http://localhost:7733;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_cache off;
        proxy_buffering off;
        proxy_read_timeout 100s;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    # Document Server (по 8000)
    location /ds/ {
        proxy_pass http://172.21.0.2:80/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 3600s;
        proxy_connect_timeout 3600s;
        proxy_send_timeout 3600s;
    }
}

==============================

Создать сертификат:

sudo certbot --nginx -d ИМЯ_ДОМЕНА