发布shp分为两种方式:
添加存储仓库:

根据需要选择你的数据源类型,本教程选择第一个Directory of spatial files (shapefiles)

将存放shp数据的文件夹,发布为数据源:


点击发布,然后设置一些服务选项即可:

数据

Tile Caching

点击保存,即完成发布。
在左侧的图层预览中,找到刚刚发布的图层名字,以openlayers方式预览 (此时地图是默认的样式):


参考官方给的 样式示例,根据需要选择一个适合的sld文件进行下载:
此处选择一个带有标签的sld文件

在Geoserver中新建样式,上传刚刚下载的sld 样式文件,点击保存完成样式创建:

当然,也可以直接copy下面的xml到内容框里(建议):
<StyledLayerDescriptor xmlns="http://www.opengis.net/sld" xmlns:se="http://www.opengis.net/se" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" xmlns:xlink="http://www.w3.org/1999/xlink">
<NamedLayer>
<se:Name>Province_Henanse:Name>
<UserStyle>
<se:Name>Province_Henanse:Name>
<se:FeatureTypeStyle>
<se:Rule>
<se:Name>Single symbolse:Name>
<se:PolygonSymbolizer>
<se:Fill>
<se:SvgParameter name="fill">#85b66fse:SvgParameter>
se:Fill>
<se:Stroke>
<se:SvgParameter name="stroke">#232323se:SvgParameter>
<se:SvgParameter name="stroke-width">1se:SvgParameter>
<se:SvgParameter name="stroke-linejoin">bevelse:SvgParameter>
se:Stroke>
se:PolygonSymbolizer>
se:Rule>
<se:Rule>
<se:TextSymbolizer>
<se:Label>
<ogc:PropertyName>nameogc:PropertyName>
se:Label>
<se:Font>
<se:SvgParameter name="font-family">微软雅黑se:SvgParameter>
<se:SvgParameter name="font-size">13se:SvgParameter>
se:Font>
<se:LabelPlacement>
<se:PointPlacement>
<se:AnchorPoint>
<se:AnchorPointX>0se:AnchorPointX>
<se:AnchorPointY>0.5se:AnchorPointY>
se:AnchorPoint>
se:PointPlacement>
se:LabelPlacement>
<se:Halo>
<se:Radius>2se:Radius>
<se:Fill>
<se:SvgParameter name="fill">#ffffffse:SvgParameter>
se:Fill>
se:Halo>
<se:Fill>
<se:SvgParameter name="fill">#000000se:SvgParameter>
se:Fill>
<se:VendorOption name="maxDisplacement">1se:VendorOption>
se:TextSymbolizer>
se:Rule>
se:FeatureTypeStyle>
UserStyle>
NamedLayer>
StyledLayerDescriptor>
在图层中,找到刚刚发布的图层:

选择刚刚创建的样式名称,点保存:

保存之后,继续预览该图层,发现已经有样式和标注了:

为了教程,新建了一个面图层,作为测试:


通过IP 端口,用户名+密码,连接指定数据库test_gis:

如果你的输入都正确的话,保存之后,会自动跳转到:

后面的发布过程与shp一样了。请参考前面的步骤。。。

添加存储仓库:

新建数据源:

选中tif文件


默认选项可以不用更改,直接点保存,即完成发布。



OK!

默认的样式只有灰度,如果想让它展示五彩斑斓,参考官方样式说明 Geoserver SLD样式规范,流程如下:
根据需要下载一个sld文件:

在Geoserver中新建样式,并上传刚刚下载的sld 样式文件:

新建样式完成后,回到图层中,找到刚刚发布tif图层,给它选择样式。

选中刚刚新建的样式名字:


重新预览地图,发现已经变了颜色:

待补充:
在Linux系统上,排除编码问题后,依旧显示方框,此时查看geoserver中支持的字体,并没有中文。

因此,需要给所在的Linux系统,增加中文字体。
从当前所使用Windows系统中,copy出一些中文字体,如:

然后,将其上传至Linux服务器,可以存放到/usr/share/fonts/font_zh,并安装字体:
# 进入你存字体的目录
cd /usr/share/fonts/font_zh
# 安装
sudo apt -y install xfonts-utils fontconfig
# xfonts-utils 生产字体索引
sudo mkfontscale
sudo mkfontdir
# fontconfig 更新字体缓存
sudo fc-cache
安装好字体之后,重启一下系统,再次进入Geoserver检查,发现已经有了中文字体。
此时,图层的中文标注也可以正常显示!