https://github.com/biegehydra/libpostalnetdockercontainer
An asp.net core web api harnessing the power of LibPostal (Address Parser and Expander) with a docker file for linux container deployment.
https://github.com/biegehydra/libpostalnetdockercontainer
address-extraction address-parser container docker libpostal
Last synced: about 2 months ago
JSON representation
An asp.net core web api harnessing the power of LibPostal (Address Parser and Expander) with a docker file for linux container deployment.
- Host: GitHub
- URL: https://github.com/biegehydra/libpostalnetdockercontainer
- Owner: biegehydra
- License: mit
- Created: 2023-08-10T01:48:16.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-04-23T18:19:24.000Z (about 1 year ago)
- Last Synced: 2024-04-23T20:13:55.102Z (about 1 year ago)
- Topics: address-extraction, address-parser, container, docker, libpostal
- Language: C#
- Homepage:
- Size: 3.88 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
## Instructions to run locally
### Build or Download LibPostal.dll
Before using the .Net bindings, you must build the libpostal C library or download the precompiled library.Downloads (From openvenues/libpostal AppVeyor CI):
+ [x86 / 32-bit version](https://goo.gl/Bf3EzE)
+ [x64 / 64-bit version](https://goo.gl/o8DAi8)If you opt for downloading just extract the folder and put all its contents
in the appropriate folder. (LibPostalNet/x64 or LibPostalNet/x86)### Note
Downloading the LibPostal.dll doesn't mean you don't have to install LibPostal, it just
means you don't have to build it. You still need to install it on your machine.### Install LibPostal on your machine
Instructions can be found on LibPostal's github https://github.com/openvenues/libpostal
These are the instructions I used on my WINDOWS machine. WHEREVER YOU INSTALL LIBPOSTAL
YOU MUST UPDATE THE APPSETTINGS.DEVELOPMENT.JSON FILE WITH THE APPROPRIATE PATH.#### Installation (Windows)
**MSys2/MinGW**
For Windows the build procedure currently requires MSys2 and MinGW. This can be downloaded from http://msys2.org. Please follow the instructions on the MSys2 website for installation.
Please ensure Msys2 is up-to-date by running:
```
pacman -Syu
```Install the following prerequisites:
```
pacman -S autoconf automake curl git make libtool gcc mingw-w64-x86_64-gcc
```Then to build the C library:
```
git clone https://github.com/openvenues/libpostal
cd libpostal
cp -rf windows/* ./
./bootstrap.sh
./configure --datadir=[...some dir with a few GB of space...]
make -j4
make install
```
Notes: When setting the datadir, the `C:` drive would be entered as `/c`. The libpostal build script automatically add `libpostal` on the end of the path, so '/c' would become `C:\libpostal\` on Windows.The compiled .dll will be in the `src/.libs/` directory and should be called `libpostal-1.dll`.
If you require a .lib import library to link this to your application. You can generate one using the Visual Studio `lib.exe` tool and the `libpostal.def` definition file:
```
lib.exe /def:libpostal.def /out:libpostal.lib /machine:x64
```## Instructions to run docker container locally
When running this project in a docker container locally, you will want to take advantage of
layer caching; because installing LibPostal in a container takes a lot of time.
To do this, open command prompt in the root of the project (with the docker file) and run the following```
docker build -t libpostalnet:v1 .
```
Then every time you create a new image, use the same name and it will use the cached layers.```
docker build -t libpostalnet:v2 .
```### Run the container
```
docker run -d -p {host port}:{container port} {image name}:{image tag}ex: docker run -d -p 7052:80 libpostal:v6
```After that, you can test that it's running by going to http://localhost:7052/health
Note: It is http not https here.