# osmCoverage ## Summary 1. 位置情報付きのデータとOpenStreetMap上のデータとを比較・評価して、各データの`score`を算出する。 2. 算出されたデータは、PostGISデータベースに格納される。 ## Development * Used by NetBeans 8.2 * OpenJDK 8 ## External library * [hayashi.jar](https://osdn.net/projects/hayashilib/releases/) - hayashi lib * [javax.json.jar](https://javaee.github.io/jsonp/) - JSON parser * [commons-compress-1.18.jar](https://commons.apache.org/proper/commons-compress/download_compress.cgi) - Apache Commons Compress * [hsqldb_2.2.9.jar](http://hsqldb.org/) - HSQLDB * [postgresql-42.2.4.jar](https://www.postgresql.org/) - PostgeSQL JDBC driver ### build ### Development environment ![MachineStructure](machinestructure.png) 1. Geofabrikから`japan-latest.osm.pbf`を「作業用PC」にダウンロード 2. 「作業用PC」でゴニョゴニョすると、「統計データ(カバレッジ率)」と「ベクタタイル」が生成される 3. 生成された「統計データ」と「ベクタタイル」を GitHub に プッシュ(push) する 4. ついでに、`Raspi3`にある「公開用のPostGIS」にも「データ」をコピーする ## 使い方 ### database PostGIS #### PostGIS(osmdb) データベースを立ち上げる "PostGIS"を起動する * Use by DockerHub `kartoza/postgis:9.6-2.4` 1) `docker pull kartoza/postgis:9.6-2.4` 2) `WORKAREA=$pwd` 3) `mkdir $HOME/pg_data` 4) `docker run --name=osmdb -m 2g -d -e POSTGRES_USER=alex -e POSTGRES_PASS=password -e POSTGRES_DBNAME=osmdb -e ALLOW_IP_RANGE=0.0.0.0/0 -p 5432:5432 -v $HOME/pg_data:/var/lib/postgresql --restart=always kartoza/postgis:9.6-2.4` * `--name=osmdb` * `-m 2g` momory 2GB * `-e POSTGRES_USER=alex` * `-e POSTGRES_PASS=password` * `-e POSTGRES_DBNAME=osmdb` * `-e ALLOW_IP_RANGE=0.0.0.0/0` すべてのIPからの接続を許可する * `-p 5432:5432` * `-v $HOME/pg_data:/var/lib/postgresql` PostgreSQL databade data folder * `--restart=always` ``` $ docker pull kartoza/postgis:9.6-2.4 $ mkdir $ mkdir $HOME/pg_data $ docker run -m 2g --name=osmdb -d -e POSTGRES_USER=alex -e POSTGRES_PASS=password -e POSTGRES_DBNAME=osmdb -e ALLOW_IP_RANGE=0.0.0.0/0 -p 5432:5432 -v $HOME/pg_data:/var/lib/postgresql --restart=always kartoza/postgis:9.6-2.4 $ ``` "pgAdmin4"で接続を確認する 1) `docker pull dpage/pgadmin4` 2) `docker run --name=pgadmin4 -p 80:80 -e "PGADMIN_DEFAULT_EMAIL=gisuser@domain.com" -e "PGADMIN_DEFAULT_PASSWORD=gisuser" -d dpage/pgadmin4` * --name=pgadmin4 * -e "PGADMIN_DEFAULT_EMAIL=gisuser@domain.com" * -e "PGADMIN_DEFAULT_PASSWORD=gisuser" 3) pgAdmin4 : Login * `http://localhost/` * userid: `gisuser@domain.com` * password: `gisuser` 4) pgAdmin4 : 接続 / Connection * host name: `localhost` * port: `5432` * database admin: `postgres` * user name: `alex` * password: `password` "PostGISへの接続設定ファイル"を準備する * postgis `osmdb.properties` ``` db_driver=org.postgresql.Driver db_url=jdbc:postgresql://172.17.0.1:5432/osmdb db_user=alex db_passwd=password ``` "" 6. osm2pgsql ``` echo '*:*:*:alex:password' > ~/.pgpass chmod 600 ~/.pgpass ``` 91. stop pgAdmin4 `docker stop stupefied_poitras` 92. stop postGIS `docker stop postgis`