Linux部署OSM本地服务测试环境

发布于:2025-09-05 ⋅ 阅读:(14) ⋅ 点赞:(0)

概述:

由于项目中有个需求增加了OSM自定义地图功能--->因此需要测试数据提供故此在这里记录下部署过程,需要的可以自己本地部署一套

以本人本地地址已部署完成地址为例介绍下:

http://172.16.50.76:8080/

http://172.16.50.76:8088/?layer=3146198814%7E90#0.77/0/34.5

需要的可以自己本地部署一套;

准备环境

  1. 安装linux系统(openmaptiles开源库只能在linux系统上运行)

  2. 安装docker

  3. 安装Docker Compose

  4. 安装git

下面我是通过手动方式进行部署Docker

1、安装docker

yum install -y yum-utils device-mapper-persistent-data lvm2

2、设置国内阿里云的镜像源,会比官方的快

(注意:镜像毕竟是镜像,可能会存在很多报错问题,本人因为提前处理很多问题,所以一路很顺,具体问题具体分析)

yum-config-manager --add-repo  http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、安装Docker Engine-Community

yum install docker-ce docker-ce-cli containerd.io

4、启动docker

systemctl start docker

5、测试是否正确

docker run hello-world

6、查看此时docker是否安装成功,具体版本

[root@localhost ~]# docker version
Client: Docker Engine - Community
 Version:           26.1.4
 API version:       1.45
 Go version:        go1.21.11
 Git commit:        5650f9b
 Built:             Wed Jun  5 11:32:04 2024
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          26.1.4
  API version:      1.45 (minimum version 1.24)
  Go version:       go1.21.11
  Git commit:       de5c9cf
  Built:            Wed Jun  5 11:31:02 2024
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.33
  GitCommit:        d2d58213f83a351ca8f528a95fbd145f5654e957
 runc:
  Version:          1.1.12
  GitCommit:        v1.1.12-0-g51d5e94
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

安装Docker Compose

1、安装docker compose

curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

输出结果如下:
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 11.6M  100 11.6M    0     0  3026k      0  0:00:03  0:00:03 --:--:-- 7338k

2、设置权限

chmod +x /usr/local/bin/docker-compose

3、测试是否正确

docker-compose --version

输入结果如下:
docker-compose version 1.27.4, build 40524192

安装git

Git对应tar包下载地址

https://github.com/git/git/tags

安装过程相对简单,不做过多介绍,自行安装即可;

输入命令

 # make prefix=/usr/local/git all doc

报错如下: make: *** No rule to make target `all’. Stop.

是因为目录不正确,cd到git的目录下即可正常编译

发布地图

openmaptiles开源库

  1. github地址:https://github.com/openmaptiles/openmaptiles

  2. 快速入门文档:https://github.com/openmaptiles/openmaptiles/blob/master/QUICKSTART.md

1、拉取openmaptiles代码

git clone https://github.com/openmaptiles/openmaptiles.git

2、拉取完成后,进入目录

cd openmaptiles

3、执行make命令

make

此时再次进行执行make命令成功

本地测试

本地能不能打开这个网址:https://www.wikidata.org/,openmaptiles需要从这个网址下载poi数据,如果不能访问,就按下面的步骤设置,跳过这一步。后续想要poi的数据的,可以自行翻墙解决

如何跳过下载poi数据:

1、使用vi打开quickstart.sh文件

vi quickstart.sh

2、找到 make import-wikidata 行,在 make import-wikidata 命令前输入#号

处理数据

执行下面的快速启动命令

./quickstart.sh 

发布矢量瓦片服务

  1. 启动服务

make start-tileserver

在自己电脑浏览器中输入虚拟机ip地址加端口8080,我虚拟机IP地址是,在浏览器中打开已完成的地址

http://172.16.50.76:8080/

点击 view 按钮,查看效果

自定义地图样式

启动maputnik

make start-maputnik

在自己电脑浏览器中输入虚拟机ip地址加端口8088,我虚拟机服务器的地址是

http://172.16.50.76:8088/?layer=3146198814%7E90#0.77/0/34.5

在刚才启动的TileServer-GL 网页中,点击下图中的TileJSON链接,然后拷贝地址

回到maputnik网页,点击下图框中的按钮Data Sources,把上面的地址粘贴到绿框中,再点击红框中的删除按钮,关闭其它地图。关闭弹出框,就能看到我们发布的地图了

接下来就可以自由奔放的自定义地图样式了


网站公告

今日签到

点亮在社区的每一天
去签到