Skip to content

lukaszroszczak/postgres-asseco-17-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PostgreSQL 17 Asseco dla mMedica - Docker

PostgreSQL Docker Encoding License

Kontener Docker z PostgreSQL 17 w wersji Asseco, skonfigurowany z kodowaniem CP1250 (WIN1250) dla aplikacji mMedica.

📋 Spis treści

🎯 O projekcie

Ten projekt zawiera kompletną konfigurację PostgreSQL 17 dostosowaną do wymagań systemu mMedica (Asseco Poland):

  • ✅ PostgreSQL 17.0 skompilowany ze źródeł
  • ✅ Pliki binarne Asseco dla mMedica
  • ✅ Kodowanie WIN1250 (CP1250) z locale pl_PL.CP1250
  • ✅ Obsługa SSL z certyfikatami
  • ✅ Specjalna konfiguracja pg_hba.conf wymagana przez wersję Asseco
  • ✅ Gotowy do uruchomienia w Docker

📦 Wymagania

  • Docker >= 20.10
  • Docker Compose >= 2.0
  • Minimum 4GB wolnego miejsca
  • Archiwum Postgres-17.0-Linux.tar od Asseco (nie zawarte w repo)

🚀 Szybki start

1. Sklonuj repozytorium

git clone https://github.com/twoj-uzytkownik/postgres-asseco-17-docker.git
cd postgres-asseco-17-docker

2. Umieść pliki Asseco

# Skopiuj archiwum Postgres-17.0-Linux.tar do katalogu data/
cp /path/to/Postgres-17.0-Linux.tar data/
cd data
tar xvf Postgres-17.0-Linux.tar

3. Wygeneruj certyfikaty SSL

cd certs
./generate-certs.sh
cd ..

4. Zbuduj i uruchom

docker-compose up -d --build

5. Weryfikacja

docker exec -it postgres-asseco psql -U postgres -c "SELECT version();"

📚 Dokumentacja

🗂️ Struktura projektu

postgres-asseco-17-docker/
├── README.md                           # Ten plik
├── LICENSE                             # Licencja MIT
├── docker-compose.yml                  # Konfiguracja Docker Compose
├── Dockerfile                          # Definicja obrazu Docker
├── .gitignore                          # Pliki ignorowane przez Git
├── docs/                               # Dokumentacja
│   ├── INSTRUKCJA.md                   # Pełna instrukcja instalacji
│   ├── KONFIGURACJA.md                 # Szczegóły konfiguracji
│   ├── TROUBLESHOOTING.md              # Rozwiązywanie problemów
│   └── FAQ.md                          # FAQ
├── scripts/                            # Skrypty pomocnicze
│   ├── init-db.sh                      # Inicjalizacja bazy danych
│   ├── start-postgres.sh               # Uruchamianie PostgreSQL
│   ├── stop-postgres.sh                # Zatrzymywanie PostgreSQL
│   └── backup.sh                       # Backup bazy danych
├── certs/                              # Certyfikaty SSL
│   ├── generate-certs.sh               # Skrypt generowania certyfikatów
│   └── README.md                       # Instrukcje dot. certyfikatów
├── config/                             # Pliki konfiguracyjne
│   ├── postgresql.conf.template        # Szablon postgresql.conf
│   ├── pg_hba.conf.template            # Szablon pg_hba.conf
│   └── docker-entrypoint.sh            # Skrypt startowy
└── data/                               # Dane (nie w repo)
    ├── Postgres-17.0-Linux/            # Pliki Asseco (nie w repo)
    └── pgdata/                         # Dane PostgreSQL (nie w repo)

⚙️ Konfiguracja

Zmienne środowiskowe

Utwórz plik .env:

# PostgreSQL Configuration
POSTGRES_USER=postgres
POSTGRES_PASSWORD=your_secure_password
POSTGRES_DB=postgres

# Network
POSTGRES_PORT=5432
POSTGRES_HOST=0.0.0.0

# Paths
PGDATA=/var/lib/postgresql/data
CERTS_PATH=/usr/local/pgsql/certs

# Locale
POSTGRES_LOCALE=pl_PL.CP1250
POSTGRES_ENCODING=WIN1250

Dostosowanie pg_hba.conf

Edytuj config/pg_hba.conf.template aby dodać dostęp z konkretnych sieci:

hostssl all             all             192.168.1.0/24          md5 clientcert=verify-ca

🔧 Podstawowe komendy

# Uruchomienie
docker-compose up -d

# Zatrzymanie
docker-compose down

# Logi
docker-compose logs -f

# Wejście do kontenera
docker exec -it postgres-asseco bash

# Backup bazy
docker exec postgres-asseco /scripts/backup.sh

# Restart
docker-compose restart

🐛 Troubleshooting

Problem: Kontener ciągle się restartuje

Rozwiązanie: Sprawdź logi:

docker logs postgres-asseco

Problem: Błąd "could not load pg_hba.conf"

Rozwiązanie: Upewnij się że:

  • Brak linii local w pg_hba.conf
  • Wszystkie linie hostssl mają clientcert=verify-ca
  • SSL jest włączony w postgresql.conf

Problem: Błąd z certyfikatami

Rozwiązanie:

cd certs
chmod 700 .
chmod 400 *.key
chmod 400 *.crt

Więcej w dokumentacji troubleshooting.

🤝 Contributing

Chętnie przyjmujemy Pull Requesty! Jeśli chcesz przyczynić się do rozwoju projektu:

  1. Fork projektu
  2. Utwórz branch dla swojej funkcjonalności (git checkout -b feature/AmazingFeature)
  3. Commit zmian (git commit -m 'Add some AmazingFeature')
  4. Push do brancha (git push origin feature/AmazingFeature)
  5. Otwórz Pull Request

📝 Changelog

[1.0.0] - 2025-10-21

Added

  • Początkowa wersja z PostgreSQL 17.0
  • Obsługa kodowania CP1250
  • Konfiguracja SSL
  • Dokumentacja instalacji

📄 Licencja

Projekt dostępny na licencji MIT - szczegóły w pliku LICENSE.

👥 Autorzy

🙏 Podziękowania

  • Asseco Poland za wersję PostgreSQL dla mMedica
  • Społeczność PostgreSQL
  • Społeczność Docker

📞 Kontakt

Masz pytania? Otwórz Issue na GitHubie.


⚠️ Uwaga: Ten projekt wymaga posiadania licencjonowanych plików PostgreSQL Asseco (Postgres-17.0-Linux.tar), które nie są dołączone do repozytorium. Skontaktuj się z Asseco Poland w celu uzyskania dostępu.

About

PostgreSQL 17 Asseco z CP1250 dla mMedica

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors