Sveiki! Tai yra Jūsų startinis projekto "template".
Šioje repositorijoje rasite Symfony 4.0.6
minimalų projekto paketą su jau paruoštais
visais reikalingais failais ir įrankiais darbui:
- Lokalaus development'o aplinka (docker) (PHP 7.2, MySql DB, Nginx)
- Pradinis bundle (AppBundle) kartu su stiliaus failais.
- Įdiegtas bootstrap
- Asset'ų buildinimas (npm, yarn, sass)
- Travis CI template
Metai iš metų studentai maldavo jog galėtų dirbti su Windows'ais akademijos metu. Bet nepaisant nieko, tolerancijos ir palaikymo Windows operacinei niekada nebuvo ir nebus.
Perspėjimas: Itin kieti profesionalai nenaudoja niekam tikusių operacinių sistemų.
Naudosime naujausią dokerio versiją, kuri įgalina virtualizaciją be Virtualbox ar Vmware. Tam reikės, kad jūsų kompiuterio procesorius palaikytų Hypervisor. Nėra dėl ko nerimauti, dabartiniai kompiuteriai kone visi turi šį palaikymą.
Parsisiunčiate ir įsidiegiate įrankį iš čia. Iškart įdiegus reikia pasidaryti, kad docker
būtų galima naudoti be root teisių, kaip tai padaryti rasite čia.
Parsisiunčiate ir įsidiegiate docker-compose
iš čia.
Taip pat reikia įsidiegti Kitematic. Šis įrankis padės geriau organizuoti dokerio konteinerius.
- docker:
18.x-ce
- docker-compose:
1.20.1
Parsisiunčiate šią repositoriją. Taip taip, viršuje kairėje rasite žalią mygtuką ant kurio parašyta "Download", tada pasirenkate zip failo parsisiuntimą.
Akademijos projektui nereikia forkinti, klonuoti ar dar išrasti kokių nors kitų veiksmų, tik parsisiųsti.
Extractinat turinį į savo mėgstamą projektų direktoriją.
Einate į šią direktoriją su terminalu. Paprastai bus komanda cd <path>
.
-
Susikuriate projekto viduje
.env
failą. Failą užpildote turiniu pateiktu išenv.dist
:cp .env.dist .env
-
Pasiruoškite infrastruktūrą:
docker-compose up -d
- JavaScript/CSS įrankiams (atsidaryti atskirame lange)
docker-compose run --rm frontend.symfony
- Pirmą kartą (įsirašome JavaScript bibliotekas)
npm install --no-save
- Jei pakeitimai neatsinaujina (arba klaidos dėl
build/css
arbuild/js
):
yarn run encore dev --watch
- PHP įrankiams (atsidaryti atskirame lange)
docker exec -it php.symfony bash
- Pirmą kartą paleidus (įsirašome PHP bibliotekas):
composer install
- Jei pakeitimai neatsinaujina:
bin/console cache:clear
bin/console assets:install
Atsidarome naršyklėje 127.0.0.1:8000
Jei nematote užrašo "NFQ Akademija", reiškia, kažkur susimovėte, tokiu atveju viską ištrinat ir kartojate iš naujo tol kol gausis. Kai prarasite visiškai viltį, kreipkitės į Google, o po to į mentorių.
- Pasiruoškite infrastruktūrą (jei prieš tai leidote šią komandą, jos kartoti nereikia):
docker-compose up -d
- JavaScript/CSS įrankiams (atsidaryti atskirame lange)
docker-compose run --rm frontend.symfony
- Pirmą kartą (įsirašome JavaScript bibliotekas)
npm install --no-save
- Jei pakeitimai neatsinaujina (skiriasi nuo dev aplinkos):
yarn run encore production
- PHP įrankiams (atsidaryti atskirame lange, skiriasi nuo dev aplinkos)
docker exec -it prod.php.symfony bash
- Pirmą kartą paleidus (įsirašome PHP bibliotekas):
composer install
- Jei pakeitimai neatsinaujina (skiriasi nuo dev aplinkos):
bin/console cache:clear
bin/console assets:install
Atsidarome naršyklėje 127.0.0.1:8888
P.S. šalia galima atsidaryti ir palyginti su 127.0.0.1:8000
Išjungiama su komanda:
docker-compose kill
Galima išjungti ir po vieną:
docker-compose kill <container name>
mysql -uroot -h127.0.0.1 --port=3307 -p
Slaptažodžiui naudoti p9iijKcfgENjBWDYgSH7
- Pasikeiskite slaptažodžius: ieškokite failuose reikšmių prie
DATABASE_URL=
irAPP_SECRET=
- Pakeiskite parametrus
nginx
/apache
serveryje. Žr. pavyzdį site.conf - Įsitikinkite, kad reikalingos bibliotekos įrašytos į operacinę sistemą. Žr. pavyzdį php/Dockerfile
- Įsitikinkite, kad
APP_ENV
yraprod
(tiek naudojantbin/console
, tiek ateinantis pernginx
įindex.php
)
Jeigu kažkas nutiko ne taip, na, atsirado raudona eilutė, ar tiesiog nutrūko ir nieko nerodo, neatsidaro naršyklėje svetainė, tai pirmas žingsnis būtų paleisti komandą:
docker-compose logs
Nepamirškite, kad galima nurodyti norimą procesą ar filtruoti eilutes:
docker-compose logs mysql.symfony | grep Warning
Jei kažką su infrastrutkūrą žiauriai sugadinote, perkurti nuo nulio galima:
docker rm -f $(docker ps -aq)
docker rmi -f kickstartmaster_frontend.symfony
docker rmi -f kickstartmaster_prod.php.symfony
docker rmi -f kickstartmaster_php.symfony
Jeigu taip nutiktų, kad repositorijoje, projekto template ar instrukcijoje rastumėte klaidą, tai nesišnibždėkite vieni tarp kitų, o sukurkite "issue". O jei atidarysite "pull requestą" su fixu, gausite iškart 1000 karmos taškų.