1- # hackathon_che
2-
31# PostgreSQL 17 з підтримкою PostGIS
42
53## Що входить до складу
64
7- - PostgreSQL 17
5+ - PostgreSQL 17
86- PostGIS 3.4 - розширення для роботи з географічними об'єктами та просторовими даними
97- Скрипти ініціалізації для автоматичного налаштування PostGIS
10- - Docker Compose конфігурація
8+ - Docker Compose конфігурація
119
1210## Як використовувати
1311
1412### Запуск за допомогою Docker Compose
1513
16141 . Клонуйте репозиторій:
1715 ``` bash
18- git clone https://github.com/tesaide/hackathon_che.git
16+ git clone [ https://github.com/tesaide/hackathon_che.git](https://github.com/tesaide/hackathon_che.git)
1917 cd Hackathon
2018 ```
2119
2826 ``` bash
2927 psql -h localhost -U postgres -d geodatabase
3028 ```
31- Пароль: ` post_hack `
29+ Пароль: ` post_hack `
3230
3331### Налаштування
3432
35- У файлі ` compose.yaml `
33+ У файлі ` compose.yaml `
3634- ` POSTGRES_USER ` : ім'я користувача (за замовчуванням ` postgres ` )
3735- ` POSTGRES_PASSWORD ` : пароль (за замовчуванням ` post_hack ` )
3836- ` POSTGRES_DB ` : назва бази даних (за замовчуванням ` geodatabase ` )
4543- ` initdb-postgis.sh ` - скрипт ініціалізації PostGIS при першому запуску
4644- ` update-postgis.sh ` - скрипт для оновлення версії PostGIS
4745
48-
4946# React Native з Expo у Docker
5047
5148## Використані версії
6360docker compose up -d
6461```
6562
66- # Python Flask API
63+ # Python Flask API
6764
6865Цей Docker-контейнер містить середовище розробки для Python 3.12 з Flask
6966
@@ -93,7 +90,6 @@ docker compose up -d
9390curl http://localhost:5050/
9491```
9592
96-
9793# java_authentication
9894
9995## Що входить до складу
@@ -112,18 +108,20 @@ curl http://localhost:5050/
112108 ``` bash
113109 git clone < URL>
114110 cd < назва-папки>
111+ ```
115112
116- 2. Запустіть контейнер
117- docker compose up -d
118-
119- # ##Налаштування
113+ 2 . Запустіть контейнер:
114+ ``` bash
115+ docker compose up -d
116+ ```
120117
121- - container_name - ім' я контейнера — java-spring-app
122- - volumes - поточна директорія монтується в контейнер у /app
123- - ports - проброс порту 8080 з хоста в контейнер
124- - restart - контейнер автоматично перезапускається при збої
125- - networks - окрема bridge-мережа java_network
118+ ### Налаштування
126119
120+ - ` container_name ` - ім'я контейнера — ` java-spring-app `
121+ - ` volumes ` - поточна директорія монтується в контейнер у ` /app `
122+ - ` ports ` - проброс порту ` 8080 ` з хоста в контейнер
123+ - ` restart ` - контейнер автоматично перезапускається при збої
124+ - ` networks ` - окрема bridge-мережа ` java_network `
127125
128126# java_location
129127
@@ -143,17 +141,77 @@ docker compose up -d
143141 ``` bash
144142 git clone < URL>
145143 cd < назва-папки>
144+ ```
146145
147- 2. Запустіть контейнер
148- docker compose up -d
146+ 2 . Запустіть контейнер:
147+ ``` bash
148+ docker compose up -d
149+ ```
150+
151+ ### Налаштування
152+
153+ - ` container_name ` - ` java21-spring-app `
154+ - ` volumes ` - монтується локальна папка в ` /app `
155+ - ` ports ` - ` 8081 ` (хост) → ` 8080 ` (контейнер)
156+ - ` networks ` - окрема ізольована мережа ` java21_network `
157+ - ` restart ` - ` unless-stopped ` : контейнер перезапускається при збої
158+
159+ # MinIO Docker Container
160+
161+ Цей контейнер запускає MinIO сервер для зберігання об'єктів.
162+
163+ ## Запуск контейнера
164+
165+ Для запуску контейнера скористайтеся наступною командою:
166+
167+ ``` bash
168+ docker run -d --name minio \
169+ -p 9000:9000 \
170+ -p 9001:9001 \
171+ -e " MINIO_ROOT_USER=minioadmin" \
172+ -e " MINIO_ROOT_PASSWORD=minioadmin123" \
173+ -v ~ /minio-data:/data \
174+ quay.io/minio/minio server /data --console-address " :9001"
175+ ```
176+
177+ ### Опис параметрів
178+
179+ - ` -d ` : Запуск контейнера в фоновому режимі (detached).
180+ - ` --name minio ` : Присвоєння контейнеру імені "minio".
181+ - ` -p 9000:9000 ` : Порт 9000 хост-машини відображається на порт 9000 контейнера (для доступу до API).
182+ - ` -p 9001:9001 ` : Порт 9001 хост-машини відображається на порт 9001 контейнера (для консолі MinIO).
183+ - ` -e "MINIO_ROOT_USER=minioadmin" ` : Встановлення імені користувача адміністратора MinIO.
184+ - ` -e "MINIO_ROOT_PASSWORD=minioadmin123" ` : Встановлення пароля адміністратора MinIO.
185+ - ` -v ~/minio-data:/data ` : Монтування директорії ` ~/minio-data ` на хост-машині в директорію ` /data ` контейнера для зберігання даних MinIO.
186+ - ` quay.io/minio/minio server /data --console-address ":9001" ` : Запуск MinIO сервера з консоллю на порту 9001.
187+
188+ ## Підключення за допомогою Python (boto3)
189+
190+ Приклад підключення до MinIO сервера за допомогою бібліотеки ` boto3 ` в Python:
191+
192+ ``` python
193+ import boto3
194+
195+ s3 = boto3.client(
196+ ' s3' ,
197+ endpoint_url = ' [http://192.168.88.54:9000](http://192.168.88.54:9000)' ,
198+ aws_access_key_id = ' minioadmin' ,
199+ aws_secret_access_key = ' minioadmin123' ,
200+ )
201+
202+ # Список бакетів (якщо є)
203+ print (s3.list_buckets())
204+ ```
205+
206+ ### Зауваження
207+
208+ - Замініть ` 192.168.88.54 ` на IP-адресу вашого MinIO сервера.
209+ - Переконайтеся, що ` boto3 ` встановлений (` pip install boto3 ` ).
210+
211+ ## Доступ до консолі MinIO
149212
150- ###Налаштування
213+ Консоль MinIO доступна за адресою ` http://<IP-адреса>:9001 ` у вашому браузері. Використовуйте ` minioadmin ` як ім'я користувача та ` minioadmin123 ` як пароль.
151214
152- - container_name - java21-spring-app
153- - volumes - монтується локальна папка в /app
154- - ports - 8081 (хост) → 8080 (контейнер)
155- - networks - окрема ізольована мережа java21_network
156- - restart - unless-stopped: контейнер перезапускається при збої
157215
158216Цей README.md надає базову інформацію про проект, інструкції по запуску та настройці, а також опис файлів, які входять до складу. Ви можете адаптувати його під ваші потреби, якщо потрібно додати якісь конкретні деталі проекту.
159217
0 commit comments