Docker - backend

Struktura projektu

Projekt tvoří několik komponent:

  • pretty-api - popis API ve swaggeru
  • pretty-admin - administrace v Angularjs
  • pretty-backend - backend v php
  • pretty-docker - docker, databáze, spouštění

API

Popis API ve swaggeru. Odkaz na online editor: https://editor.swagger.io/
Ve swaggeru je možné si prohlédnou dokumentaci API a zavolat si jeho funkce.
Pro účely lokálního spouštění pozor na správné URL a schéma - mimo localhost se používá https

Vlastní definice je v souboru swagger.yml
Soubor se nijak nekompiluje.

Admin

Aplikace vytvořená v angularu. Kompiluje se příkazem ./build.sh , výsledek je v adresáři /dist

Backend

Aplikace bez UI, komunikuje pouze pomocí REST API. Je vytvořená na frameworku slim a doctrine.
Nastavení parametrů, přístupu do databáze se provádí z dockeru, případně je to v src/settings.php
Před spuštěním je třeba doplnit depencence pomocí příkazu ./build.sh

Uploadované soubory jsou v adresáři: public/uploads

Docker

Definuje jednotlivé komponenty a umožňuje vše lokálně spustit.

Jak spustit projekt

$ cd pretty-docker
$ docker-compose up

počkat, až vše naběhne - vytváří se nová databáze, nahrává se do ní soubor mysql/initial.sql

Otevřít adminer: http://localhost:5005/adminer.php
a přihlásit se do něj:
Server: db
Uživatel: prettydb
Heslo: pqK?TySYvlNd
Databáze: prettydb

Pokud jsou vidět tabulky, je v pořádku php i mysql.
Otevřít admin: http://localhost:5005/admin/
pokud se věci dají proklikat, funguje admin i backend

Odkazy

Jak smazat docker

docker a jeho data …

docker container rm prettydocker_php_1
docker container rm prettydocker_db_1
docker volume rm prettydocker_db-data
docker volume rm prettydocker_uploads

Jak se připojit dovnitř do dockeru

$ docker ps
.. .. .. prettydocker_php_1

$ docker exec -ti prettydocker_php_1 /bin/bash

Aktualizace schematu databáze

připojit se do dockeru a potom:
$ cd api
$ php vendor/bin/doctrine orm:schema-tool:update —dump-sql

Jak exportovat databázi

export-db.png

Výstup: gzip - aby se soubor stáhl a neotevíral se na obrazovce
Databáze: USE - aby prováděla při startu kontrola a importovalo se do správné databáze

dev
Není-li uvedeno jinak, obsah této stránky je pod licencí Creative Commons Attribution-ShareAlike 3.0 License