- Логин, пароль, хост от Эластики (
ELASTIC_USER,ELASTIC_PASSWORD,ELASTICSEARCH_ADDRESS) - Порт gRPC сервера (
PORT) - Дистанция в километрах поиска по координатам (
ELASTIC_DISTANCE, по умолчанию 10км)
- Запустить ElasticSearch
docker compose up -d- Подождать некоторое время пока команда вида:
curl -f -X GET 'ELASTICSEARCH_ADDRESS:9200/_cat/health?v' --user ELASTIC_USER:ELASTIC_PASSWORDне выполнится успешно
- Для сборки необходим GO >= 1.19
- Приложение по умолчанию запущено на порту 50051
go mod tidy
go build -o main cmd/server/main.go
./main
Для проверки можно поставить evans.
Команда для подключения cli клиента:
evans -r repl --host localhost --port 50051
package api
service CitySearch
call SearchByName
call SearchByCoords
Последние две команды запрашивают параметры интерактивно:
- SearchByName name: string
- SearchByCoords lat, long: float