I just ran into this with similar GRIB data... both MRMS radar data and AirNow air quality data are projected in 0-360° longitude, I'm assuming to save space by using unsigned integers.
Using the "+pm" parameter of PROJ fixed this:
+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs
For a MapServer layer, this worked out to:
PROJECTION
### "init=epsg:4326"
"+proj=longlat +ellps=WGS84 +pm=-360 +datum=WGS84 +no_defs"
END
I've not used GeoServer, but this might work for the WKT description:
GEOGCS["4326 plus 360",
DATUM["unknown",
SPHEROID["Sphere",6371229,0]],
PRIMEM["Custom",-360],
UNIT["degree",0.0174532925199433]]
The reason for the "-360" is that the coordinates listed in the original question (as well as my own) have an Upper Left of ~230°, when that should actually be projectedtranslated/rotated to -130°. That is a difference ofi.e.: (230-360) = -130°.