老纳在此 發表於 2023-11-15 14:04:00

Windows和Linux服务器安装OnlyOffice服务

<h2>1. Windows安装OnlyOffice服务</h2>
<h3>1.1&nbsp;启用Hyper-V</h3>
<p>启用Hyper-V以在 Windows 10上创建虚拟机:</p>
<p>详情参考微软官方教程👉 官网教程地址</p>
<p>注意:可以通过多种方式启用 Hyper-V,包括使用 Windows 10 控制面板  或者  PowerShell(Hyper-V 作为可选功能内置于 Windows -- 无需下载 Hyper-V)。</p>
<h4>1. 方式一:使用 PowerShell 启用 Hyper-V</h4>
<p>以管理员身份打开 PowerShell 控制台,运行以下命令:</p>
<pre class="language-nginx highlighter-hljs"><code>Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All</code></pre>
<h4>2. 方式二:通过控制面板“设置”启用 Hyper-V 功能</h4>
<p>1. 打开控制面板,选择“程序和功能”</p>
<p>2. 选择“打开或关闭 Windows 功能”</p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115104421740-437619942.png"></p>
<p>3. 选择“Hyper-V”,然后单击“确定”</p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115104536213-470920067.png"></p>
<p><span style="color: rgba(186, 55, 42, 1)">注意:</span>安装完成后,系统会提示你重新启动计算机。</p>
<p><span style="color: rgba(224, 62, 45, 1)"><strong>问题:在控制面板-程序-启用或关闭Windows功能下找不到Hyper-v节点</strong></span></p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115104624139-934146352.png"></p>
<p>1. 新建一个TXT文件,将下面命令复制到文本文档中,并将文档重命名Hyper.cmd</p>
<pre class="language-nginx highlighter-hljs"><code>pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum &gt;hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^&gt;nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL</code></pre>
<p>2. 用管理员身份运行该文档</p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115105510000-1720782490.png"></p>
<p>3. 等待脚本执行,最后输入Y,进行电脑重启</p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115105544147-628355186.png"></p>
<p>4. 重启完成后,查看控制面板-程序-启用或关闭Windows功能,可以看下Hyper-v节点已存在。</p>
<h3>1.2 安装Docker Desktop</h3>
<p>Docker是一种容器化平台,可用于快速构建、部署和运行应用程序。在Windows 10上运行Docker可以使开发人员和系统管理员更加方便地管理应用程序的生命周期。</p>
<p>Docker Desktop是适用于Windows的Docker桌面,是Docker设计用于在Windows 10上运行。</p>
<p>它是一个本地 Windows 应用程序,为构建、交付和运行dockerized应用程序提供易于使用的开发环境。</p>
<p>Docker Desktop for Windows 使用 Windows 原生 Hyper-V 虚拟化和网络,是在 Windows 上开发 Docker 应用程序的最快、最可靠的方式。</p>
<p>Windows 版 Docker 桌面支持运行 Linux 和 Windows Docker 容器。</p>
<h4>1. 下载Docker Desktop</h4>
<p>官网下载地址:https://www.docker.com/products/docker-desktop/#</p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115110259134-654700662.png"></p>
<h4>2. 下载完成后双击运行</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115110706604-151459655.png"></p>
<h4>3. 安装完成可能需要重启</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115110948102-1648242908.png"></p>
<h4>4. 重新启动,选择接受</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115111057362-356587084.png"></p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115111516650-1609686528.png"></p>
<h4>5. 注意:如果遇到下面报错先关闭</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115111523561-997494691.png"></p>
<p>报错原因是WSL不是最新版,现在Docker Desktop默认使用WSL 2来运行,而不是以前的Hyper-V。</p>
<p>WSL是适用于 Linux 的 Windows 子系统 ,可让开发人员直接在 Windows 上按原样运行 GNU/Linux环境(包括大多数命令行工具、实用工具和应用程序),且不会产生传统虚拟机或双启动设置开销。</p>
<p>WSL 2 是适用于 Linux 的 Windows 子系统体系结构的一个新版本,它支持适用于 Linux 的 Windows 子系统在Windows 上运行 ELF64 Linux 二进制文件。</p>
<p>它的主要目标是提高文件系统性能,以及添加完全的系统调用兼容性。</p>
<p>1. cmd窗口输入下面命令</p>
<pre class="language-nginx highlighter-hljs"><code>wsl --update</code></pre>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115111603184-1139029274.png"></p>
<h4>6. 安装完成后,双击打开Docker Desktop</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115111716223-1565061914.png"></p>
<h4>7. 修改路径</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115112141390-1896007740.png"></p>
<h4>8. 点开设置,可以看到使用的wsl2虚拟引擎,而不是Hyper-V</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115111806291-113675277.png"></p>
<h4>9. 运行成功后配置需要的加速源,加快下载的速度。<span style="color: rgba(186, 55, 42, 1)">注意在原配置后加一个逗号</span></h4>
<pre class="language-nginx highlighter-hljs"><code>"registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
]</code></pre>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115112549687-1802920242.png"></p>
<h4>10. 打开命令提示符,输入docker,查看是否安装成功。</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115112211807-1497695324.png"></p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115140155341-1403515203.png"></p>
<h3>1.3 安装OnlyOffice</h3>
<p>安装onlyoffice有两种方式,第一种是独立安装nginx、epel、PostgreSQL、RabbitMQ等依赖项,再安装OnlyOffice文档插件。此种方式较为繁琐。</p>
<p>第二种为docker安装部署,省心方便,操作快捷。</p>
<h4>1. cmd使用docker拉取OnlyOffice镜像(<mark>7.2版本之前的</mark>),等待下载完成</h4>
<pre class="language-nginx highlighter-hljs"><code>docker pull onlyoffice/documentserver</code></pre>
<pre class="language-nginx highlighter-hljs"><code>docker pull onlyoffice/documentserver:7.1.1</code></pre>
<p>&nbsp;<img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115113314687-876398331.png"></p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115133010848-1175951489.png"></p>
<h4>2. 进入docker,查看镜像</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115133026633-1806887955.png"></p>
<h4>3. 启动OnlyOffice镜像,配置80端口的映射端口及文件夹路径。这里映射端口设置为了8031,可根据实际情况配置</h4>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115133931549-391264037.png"></p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115140230004-610288804.png"></p>
<h4>4. 浏览器地址输入本机ip+上面映射端口:http://192.168.19.19:8031</h4>
<p><span style="color: rgba(186, 55, 42, 1)">注意:ip不要使用localhost或127.0.0.1,要使用&nbsp;IPv4 地址</span></p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231115134323635-1995143886.png" height="593" width="1088"></p>
<h2>2. Linux安装OnlyOffice服务</h2>
<h3>2.1 使用yum命令安装Docker</h3>
<p>RAM: 4 GB+</p>
<p>CPU: 双核 2 GHz +</p>
<p>系统要求: RedHat 64bit,CentOS类、Debian类的内核版本3.8以上。(查看内核命令:uname -r)</p>
<p>Docker: 1.9.0版本及以上</p>
<h4>1. 更新yum</h4>
<pre class="language-nginx highlighter-hljs"><code>yum update</code></pre>
<h4>2. 下载Docker依赖的环境:想安装Docker,需要先将依赖的环境全部下载,就像Maven依赖JDK一样</h4>
<pre class="language-nginx highlighter-hljs"><code>yum install -y yum-utils device-mapper-persistent-data lvm2</code></pre>
<h4>3. 指定Docker镜像源:默认下载Docker会去国外服务器下载,速度较慢,我们可以设置为阿里云镜像源,速度更快</h4>
<pre class="language-nginx highlighter-hljs"><code>yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo</code></pre>
<h4>4. 安装docker-ce(社区版)</h4>
<pre class="language-nginx highlighter-hljs"><code>yum -y install docker-ce</code></pre>
<h3>2.2 docker启动,停止,重启,卸载,查看状态命令</h3>
<h4>1. 启动docker服务</h4>
<pre class="language-nginx highlighter-hljs"><code>systemctl start docker</code></pre>
<h4>2. 停止docker服务</h4>
<pre class="language-nginx highlighter-hljs"><code>systemctl stop docker</code></pre>
<h4>3. 重启docker服务</h4>
<pre class="language-nginx highlighter-hljs"><code>systemctl restart docker</code></pre>
<h4>4. 查看docker服务状态</h4>
<pre class="language-nginx highlighter-hljs"><code>systemctl status docker</code></pre>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202310/2107107-20231031153928246-1840522692.png"></p>
<h4>5. 查看docker版本</h4>
<pre class="language-nginx highlighter-hljs"><code>docker version</code></pre>
<h4>6. 设置开机自启(可跳过)</h4>
<pre class="language-java highlighter-hljs"><code>systemctl enable docker</code></pre>
<h4>7. 卸载docker</h4>
<p>1. 查看yum安装的docker文件包</p>
<pre class="language-nginx highlighter-hljs"><code>yum list installed |grep docker</code></pre>
<h3><img src="https://img2023.cnblogs.com/blog/2107107/202310/2107107-20231031162530595-477108709.png"></h3>
<p>2. 查看docker相关的rpm源文件</p>
<pre class="language-nginx highlighter-hljs"><code>rpm -qa |grep docker</code></pre>
<p>3. 删除上面查到的<span style="color: rgba(230, 126, 35, 1)">全部文件包</span></p>
<pre class="language-nginx highlighter-hljs"><code>yum remove docker.x86_64</code></pre>
<p>4. 删除docker的镜像文件,默认在/var/lib/docker目录下</p>
<pre class="language-nginx highlighter-hljs"><code>rm -rf /var/lib/docker</code></pre>
<h3>2.3 拉取OnlyOffice Document Server 的Docker镜像(可指定版本)</h3>
<pre class="language-nginx highlighter-hljs"><code>sudo docker pull onlyoffice/documentserver</code></pre>
<pre class="language-nginx highlighter-hljs"><code>sudo docker pull onlyoffice/documentserver:7.1.1</code></pre>
<p><img src="https://img2022.cnblogs.com/blog/2107107/202203/2107107-20220304151349277-1015472293.png" alt="" height="215" width="789"></p>
<h3>2.4 启动OnlyOffice镜像并映射到8031端口(端口自定义)(下载指定的版本,运行也要加上版本号)</h3>
<pre class="language-nginx highlighter-hljs"><code>sudo docker run -i -t -d -p 8031:80 onlyoffice/documentserver</code></pre>
<pre class="language-nginx highlighter-hljs"><code>sudo docker run -i -t -d -p 8031:80 onlyoffice/documentserver:7.1.1</code></pre>
<p>可以限制内存</p>
<pre class="language-nginx highlighter-hljs"><code>sudo docker run --memory 700M --memory-swap 700M -i -t -d -p 8031:80 onlyoffice/documentserver</code></pre>
<pre class="language-nginx highlighter-hljs"><code>sudo docker run --memory 700M --memory-swap 700M -i -t -d -p 8031:80 onlyoffice/documentserver:7.1.1</code></pre>
<p>注意问题:</p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231110140015553-596792035.png"></p>
<p>从7.2版本开始新增了JWT的令牌,如果未使用环境变量指定JTW密钥,会导致在每次 VM 或 服务器重启期间重新生成该机密,因此集成中可能会出现问题。</p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231110140251277-272448394.png"></p>
<p>在Docker中启动onlyoffice时带上这个参数【-e JWT_SECRET=my_jwt_secret】,再配合上面说的在 seahub_settings.py中的设置就可以正常使用了。</p>
<pre class="language-nginx highlighter-hljs"><code>sudo docker run -i -t -d -p 8031:80 --restart=always -e JWT_ENABLED=my_jwt_secret onlyoffice/documentserver</code></pre>
<p>&nbsp;或者把jwt关闭:【-e JWT_SECRET=false】</p>
<pre class="language-nginx highlighter-hljs"><code>sudo docker run -i -t -d -p 8031:80 -e JWT_ENABLED=false onlyoffice/documentserver</code></pre>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202310/2107107-20231031171747139-1650258992.png"></p>
<h3>2.5 docker常用命令</h3>
<p>1. 删除docker中的镜像</p>
<pre class="language-nginx highlighter-hljs"><code>docker rmi 镜像id</code></pre>
<p>2. 删除docker中的容器</p>
<pre class="language-nginx highlighter-hljs"><code>docker rm 容器id</code></pre>
<p>3. 查看当前正在运行的容器</p>
<pre class="language-nginx highlighter-hljs"><code>docker ps</code></pre>
<p>4. 停止当前正在运行的容器</p>
<pre class="language-nginx highlighter-hljs"><code>docker stop 容器id</code></pre>
<p>5. 查看所有容器</p>
<pre class="language-nginx highlighter-hljs"><code>docker ps -a</code></pre>
<p>6. 查看创建的镜像</p>
<pre class="language-nginx highlighter-hljs"><code>docker images</code></pre>
<p><img src="https://img2022.cnblogs.com/blog/2107107/202203/2107107-20220304151955915-1882332387.png" alt=""></p>
<p>7. 查看容器占用的内存,Ctrl+C 退出</p>
<pre class="language-nginx highlighter-hljs"><code>docker stats</code></pre>
<h3><img src="https://img2023.cnblogs.com/blog/2107107/202311/2107107-20231116105525101-152894680.png"></h3>
<p>8. 修改容器占用的内存</p>
<pre class="language-nginx highlighter-hljs"><code>docker update --memory 500M --memory-swap 500M 09342a560047(容器id)</code></pre>
<h3>2.6 浏览器输入ip + 端口访问(<span style="color: rgba(230, 126, 35, 1)">注意防火墙是否开启端口</span>) http://192.168.68.68:8031</h3>
<p>配置防火墙:https://www.cnblogs.com/liyhbk/p/13588102.html</p>
<p><img src="https://img2023.cnblogs.com/blog/2107107/202310/2107107-20231031171549850-551766805.png"><br><br></p>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/liyhbk/p/15887567.html
頁: [1]
查看完整版本: Windows和Linux服务器安装OnlyOffice服务