- PostgreSQL 17
- PostGIS 3.4 - розширення для роботи з географічними об'єктами та просторовими даними
- Скрипти ініціалізації для автоматичного налаштування PostGIS
- Docker Compose конфігурація
-
Клонуйте репозиторій:
git clone [https://github.com/tesaide/hackathon_che.git](https://github.com/tesaide/hackathon_che.git) cd Hackathon -
Запустіть контейнер:
docker compose up -d
-
Підключіться до бази даних:
psql -h localhost -U postgres -d geodatabase
Пароль:
post_hack
У файлі compose.yaml
POSTGRES_USER: ім'я користувача (за замовчуваннямpostgres)POSTGRES_PASSWORD: пароль (за замовчуваннямpost_hack)POSTGRES_DB: назва бази даних (за замовчуваннямgeodatabase)- Порт підключення (за замовчуванням
5432)
Dockerfile- інструкції для створення власного образу PostgreSQL з PostGIScompose.yaml- конфігурація Docker Compose для запуску контейнераinitdb-postgis.sh- скрипт ініціалізації PostGIS при першому запускуupdate-postgis.sh- скрипт для оновлення версії PostGIS
- Expo: ~52.0.43
- React: 18.3.1
- React Native: 0.76.9
- Expo Status Bar: ~2.0.1
docker compose up -dЦей Docker-контейнер містить середовище розробки для Python 3.12 з Flask
- Python 3.12: Сучасна версія інтерпретатора Python
- Flask: Легкий та гнучкий веб-фреймворк
- Flask-RESTful: Розширення для створення REST API
- Flask-SQLAlchemy: ORM для роботи з базами даних
- psycopg2-binary: Драйвер PostgreSQL
- Геопросторові бібліотеки: geopandas, shapely
- Аналіз даних та AI: numpy, pandas, scikit-learn
- Обробка зображень: pillow
- NLP: spacy (для української мови)
docker compose up -dcurl http://localhost:5050/- OpenJDK 8 (slim) – легкий образ Java для запуску Spring-додатків
- Maven – для збірки проєкту
- Docker Compose – для зручного керування сервісом
- Попередньо створений користувач із UID 1331
- Налаштоване середовище для запуску та дебагу Java-додатків
-
Клонуйте репозиторій:
git clone <URL> cd <назва-папки>
-
Запустіть контейнер:
docker compose up -d
container_name- ім'я контейнера —java-spring-appvolumes- поточна директорія монтується в контейнер у/appports- проброс порту8080з хоста в контейнерrestart- контейнер автоматично перезапускається при збоїnetworks- окрема bridge-мережаjava_network
- Eclipse Temurin JDK 21 – сучасна та продуктивна версія Java
- Maven – система зборки Java-проєктів
- Git і Curl – для отримання коду та мережевих запитів
- Docker Compose – для керування контейнером Spring Boot
- Створений користувач із UID 1231 для безпечного виконання коду
-
Клонуйте репозиторій:
git clone <URL> cd <назва-папки>
-
Запустіть контейнер:
docker compose up -d
container_name-java21-spring-appvolumes- монтується локальна папка в/appports-8081(хост) →8080(контейнер)networks- окрема ізольована мережаjava21_networkrestart-unless-stopped: контейнер перезапускається при збої
Цей контейнер запускає MinIO сервер для зберігання об'єктів.
Для запуску контейнера скористайтеся наступною командою:
docker run -d --name minio \
-p 9000:9000 \
-p 9001:9001 \
-e "MINIO_ROOT_USER=minioadmin" \
-e "MINIO_ROOT_PASSWORD=minioadmin123" \
-v ~/minio-data:/data \
quay.io/minio/minio server /data --console-address ":9001"-d: Запуск контейнера в фоновому режимі (detached).--name minio: Присвоєння контейнеру імені "minio".-p 9000:9000: Порт 9000 хост-машини відображається на порт 9000 контейнера (для доступу до API).-p 9001:9001: Порт 9001 хост-машини відображається на порт 9001 контейнера (для консолі MinIO).-e "MINIO_ROOT_USER=minioadmin": Встановлення імені користувача адміністратора MinIO.-e "MINIO_ROOT_PASSWORD=minioadmin123": Встановлення пароля адміністратора MinIO.-v ~/minio-data:/data: Монтування директорії~/minio-dataна хост-машині в директорію/dataконтейнера для зберігання даних MinIO.quay.io/minio/minio server /data --console-address ":9001": Запуск MinIO сервера з консоллю на порту 9001.
Приклад підключення до MinIO сервера за допомогою бібліотеки boto3 в Python:
import boto3
s3 = boto3.client(
's3',
endpoint_url='[http://192.168.88.54:9000](http://192.168.88.54:9000)',
aws_access_key_id='minioadmin',
aws_secret_access_key='minioadmin123',
)
# Список бакетів (якщо є)
print(s3.list_buckets())- Замініть
192.168.88.54на IP-адресу вашого MinIO сервера. - Переконайтеся, що
boto3встановлений (pip install boto3).
Консоль MinIO доступна за адресою http://<IP-адреса>:9001 у вашому браузері. Використовуйте minioadmin як ім'я користувача та minioadmin123 як пароль.
Цей README.md надає базову інформацію про проект, інструкції по запуску та настройці, а також опис файлів, які входять до складу. Ви можете адаптувати його під ваші потреби, якщо потрібно додати якісь конкретні деталі проекту.