基于ubuntu搭建gis和gdal的服务

基于ubuntu搭建gdal的环境

1 安装docker

curl-fsSL get.docker.com -o get-docker.sh
sudosh get-docker.sh --mirror Aliyun

2 安装docker-compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

3 安装镜像
1-nacos

git clone https://github.com/nacos-group/nacos-docker.git
cd nacos-docker
# (需要到yaml中指点版本号)我用的2.0.2
docker-compose -f example/standalone-derby.yaml up

2-redis

docker run -itd --name redis -p 6379:6379 redis

3-postgresql 带pgis插件

docker run --name postgis --restart always -e POSTGRES_PASSWORD=123456 -v /home/docker/psql/data:/var/lib/postgresql/data --privileged=true -p 5435:5432 -d postgis/postgis

4 nginx

1)docker run --name nginx-test -p 9002:80 -v /home/nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/conf.d:/etc/nginx/conf.d     -v /home/nginx/htpasswd:/htpasswd  -v /home/file:/file   -d nginx:1.23.2 废弃(考虑到带宽和速度)
sudo apt install nginx

目录 /etc/nginx
配置 /etc/nginx/nginx.conf
鉴权用户密码 需要加密 /etc/nginx/htpasswd (docker和linux的htpasswd 需要加密 win则直接明文存储)
htpasswd 安装命令

sudo apt install apache2-utils

文件服务器根目录 /home/file

server { listen 9002 ; autoindex on;

location /file {

add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS'; add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
# add_header Access-Control-Allow-Origin *;
# add_header Access-Control-Allow-Credentials true;
# add_header Access-Control-Allow-Headers Origin,X-Requested-Width,Content-Type,Accept,Authorization;
# add_header Access-Control-Allow-Methods *;
# add_header Access-Control-Max-Age 1728000; if ($request_method = 'OPTIONS') { return 204; }


alias /home/file;

auth_basic "nginx basic auth"; auth_basic_user_file /etc/nginx/htpasswd;
# 文件显示功能 autoindex on; #开启索引功能 autoindex_exact_size off; #关闭计算文件确切大小(单位bytes),只显示大概大小(单位kb、mb、gb) autoindex_localtime on; #显示本机时间而非 GMT 时间


}}

5 安装python
https://www.jianshu.com/p/347e87e9d73b

5 安装gdal

sudo apt install gdal-bin

sudo add-apt-repository -y ppa:ubuntugis/ppa

sudo apt update

sudo apt upgrade

apt install gdal-bin python-gdal python3-gdal libgdal-dev

gdalinfo --version

//ps:目前最新的版本3.0.1
如果版本不够就去gdal 官网下载zip压缩包 将要执行的.py的路径指定到解压的包中

python /home/software/gdal/gdal-3.6.3/swig/python/gdal/utils/osgeo_utils/gdal2tiles.py

6、前后端包
后端 : /home/java/
前端:: /home/software/vue/
需将nginx 转发到目录下

server{
	listen		8989;
	server_name		localhost;
	location / {
		client_max_body_size 102400000m;  
           client_body_buffer_size 10000000m;
		root /home/software/vue/monitorWatcher;
		index index.html;
		try_files $uri $uri/ /index.html;
	}

	 
	location /service-back {
	  	client_max_body_size 102400000m;   #允许客户端请求的最大单文件字节数,人话:能上传多大文件
           client_body_buffer_size 10000000m; #缓冲区代理缓冲用户端请求的最大字节数,人话:一次能接受多少文件,建议根据带宽上限设置,减少磁盘读写,加快速度
        	rewrite  ^/api/(.*)$ /$1 break;
		proxy_pass  http://localhost:8988;
	}
	#转到nginx文件服务器
	location /map-service {
		client_max_body_size 102400000m;  
           client_body_buffer_size 10000000m;
        	rewrite  ^/map-service/(.*)$ /$1 break;
		proxy_pass  http://localhost:9002;
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值