solr 启动 设置 host
时间: 2023-07-22 20:37:45 浏览: 52
你可以在启动 Solr 容器时,使用 `-p` 参数来映射容器内的端口到宿主机的端口,并使用 `-h` 参数来设置容器的主机名。例如,使用以下命令启动 Solr 容器:
```
docker run -d -p 8983:8983 --name solr -h my-solr solr
```
在上面的命令中,我们将容器的 8983 端口映射到宿主机的 8983 端口,使用 `--name` 参数指定容器名称为 `solr`,并使用 `-h` 参数指定容器的主机名为 `my-solr`。这样,你就可以在宿主机上使用 `http://localhost:8983/solr` 访问 Solr 的管理界面,并在 Solr 配置文件中设置 `my-solr` 作为 Solr 的主机名。例如,在 `solrconfig.xml` 文件中设置以下内容:
```xml
<str name="host">${host:my-solr}</str>
```
这样,Solr 就会使用 `my-solr` 作为主机名,并监听容器内的 8983 端口。如果你想使用其他的端口号或者主机名,只需要在启动容器时相应地修改参数即可。
相关问题
非docker 下 启动 solr 设置 host
非 Docker 下启动 Solr 后设置主机名需要修改 Solr 的配置文件。具体步骤如下:
1. 打开 Solr 的配置文件 `solrconfig.xml`,该文件位于 Solr 的安装目录下的 `server/solr/configsets/_default/conf` 目录中。
2. 在 `solrconfig.xml` 文件中找到以下内容:
```xml
<requestParsers enableRemoteStreaming="false"
multipartUploadLimitInKB="2048000"
formdataUploadLimitInKB="2048"/>
```
在该元素的末尾添加以下内容:
```xml
<lst name="httpHeaders">
<str name="Host">${host:localhost}</str>
</lst>
```
这样就会在 HTTP 请求头中添加 `Host` 字段,值为 `${host:localhost}`。`${host:localhost}` 表示如果有环境变量 `host`,则使用该环境变量的值,否则使用 `localhost` 作为主机名。
3. 保存 `solrconfig.xml` 文件,并重新启动 Solr。
现在,Solr 就会使用 `${host:localhost}` 作为主机名。如果你想使用其他的主机名,只需要设置环境变量 `host` 即可。例如,在 Linux 系统中,可以使用以下命令设置环境变量:
```bash
export host=my-solr
```
这样,Solr 就会使用 `my-solr` 作为主机名。
linux solr自启动
您好!对于在Linux上实现Solr的自启动,您可以按照以下步骤进行操作:
1. 首先,确保您已经成功安装了Solr,并且可以通过命令行启动和停止它。
2. 打开终端,并使用root或具有管理员权限的用户登录。
3. 创建一个名为`solr`的新用户,用于运行Solr服务。您可以使用以下命令创建用户并设置密码:
```
sudo adduser solr
```
4. 接下来,将Solr的安装目录更改为`solr`用户的所有权,以便该用户拥有对该目录的完全访问权限。假设Solr安装在`/opt/solr`目录下,您可以使用以下命令进行更改:
```
sudo chown -R solr:solr /opt/solr
```
5. 切换到`solr`用户:
```
sudo su - solr
```
6. 进入Solr的安装目录:
```
cd /opt/solr
```
7. 创建一个新的脚本文件,用于启动和停止Solr服务。您可以使用任何文本编辑器(如vi或nano)创建一个名为`solr.sh`的文件,并将以下内容粘贴到其中:
```
#!/bin/bash
# Solr启动脚本
# 设置JAVA_HOME为您的Java安装路径
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
# 启动Solr服务
./bin/solr start -p 8983
# 在需要时停止Solr服务
#./bin/solr stop -p 8983
```
8. 保存并关闭文件。然后,通过以下命令使脚本文件可执行:
```
chmod +x solr.sh
```
9. 测试一下脚本是否可以正常启动Solr服务:
```
./solr.sh
```
如果一切正常,您应该能够看到Solr成功启动的消息。
10. 如果测试成功,您可以退出`solr`用户:
```
exit
```
11. 现在,我们将创建一个启动脚本,以便在系统启动时自动启动Solr服务。使用文本编辑器创建一个名为`solr.service`的文件,并将以下内容粘贴到其中:
```
[Unit]
Description=Solr Server
After=network.target
[Service]
User=solr
ExecStart=/opt/solr/solr.sh
[Install]
WantedBy=multi-user.target
```
12. 保存并关闭文件。然后,将启动脚本文件移动到`/etc/systemd/system`目录下,并设置权限:
```
sudo mv solr.service /etc/systemd/system/solr.service
sudo chmod 644 /etc/systemd/system/solr.service
```
13. 最后,重载systemd并启用Solr服务:
```
sudo systemctl daemon-reload
sudo systemctl enable solr
```
现在,Solr服务将在系统启动时自动启动。您可以使用以下命令来启动、停止和检查Solr服务的状态:
- 启动Solr服务:
```
sudo systemctl start solr
```
- 停止Solr服务:
```
sudo systemctl stop solr
```
- 检查Solr服务的状态:
```
sudo systemctl status solr
```
希望这可以帮助到您!如有其他问题,请随时提出。