当前位置: 首页 > ops >正文

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

概述:

由于项目中有个需求增加了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 - CommunityVersion:           26.1.4API version:       1.45Go version:        go1.21.11Git commit:        5650f9bBuilt:             Wed Jun  5 11:32:04 2024OS/Arch:           linux/amd64Context:           defaultServer: Docker Engine - CommunityEngine:Version:          26.1.4API version:      1.45 (minimum version 1.24)Go version:       go1.21.11Git commit:       de5c9cfBuilt:            Wed Jun  5 11:31:02 2024OS/Arch:          linux/amd64Experimental:     falsecontainerd:Version:          1.6.33GitCommit:        d2d58213f83a351ca8f528a95fbd145f5654e957runc:Version:          1.1.12GitCommit:        v1.1.12-0-g51d5e94docker-init:Version:          0.19.0GitCommit:        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  CurrentDload  Upload   Total   Spent    Left  Speed0     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,把上面的地址粘贴到绿框中,再点击红框中的删除按钮,关闭其它地图。关闭弹出框,就能看到我们发布的地图了

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

http://www.xdnf.cn/news/19413.html

相关文章:

  • Ubuntu 25.10 Snapshot4 发布。
  • 电动两轮车手机导航投屏方案调研报告
  • 「日拱一码」076 深度学习——自然语言处理NLP
  • SOME/IP-SD中IPv4端点选项与IPv4 SD端点选项
  • Coze源码分析-工作空间-资源库-前端源码
  • 掌握正则表达式与文本处理:提升 Shell 编程效率的关键技巧
  • FFmpeg 不同编码的压缩命令详解
  • 【扩充位数三位变五位】2022-10-30
  • mysql导出csv中字段里有换行符的处理办法及hive导出处理办法
  • 【php反序列化字符串逃逸】
  • Go 面试题: new 和 make 是什么,差异在哪?
  • ADSL 代理 Proxy API 申请与使用指南
  • NLP技术突破:浅层与深层语义分析全解析
  • test隐藏能力
  • 5-ATSAM3X8-定时器
  • 架构选型:为何用对象存储替代HDFS构建现代数据湖
  • 腾讯混元翻译大模型Hunyuan-MT-7B:重塑跨语言沟通的技术革命
  • 定时器设计之->分级时间轮
  • 基于SpringBoot的二手交易平台【2026最新】
  • 2025我“生发”了『折行』|『内注』|『终端正偿』|『中文负偿』四大“邪术”(前二造福python代码阅读者;后二助力所有艺术人)
  • Kali自带的录屏工具:recordmydesktop
  • 基于单片机电动车充电桩/充电车棚环境监测设计
  • 如何将照片从电脑传输到安卓设备
  • vscode翻译插件
  • Kafka 架构原理
  • 【大模型】大模型微调-RLHF(强化学习)
  • Certificate is Signed Using a Weak Signature Algorithm漏洞解决
  • Uniapp 图片前端上传功能实现与详解
  • JVM:内存区域划分、类加载的过程、垃圾回收机制
  • 【Spring Cloud微服务】8.深度实战:微服务稳定性的守护神——Sentinel