|
4 years ago | |
---|---|---|
apps | 4 years ago | |
config | 4 years ago | |
data | 4 years ago | |
docker | 4 years ago | |
lib | 4 years ago | |
plugins | 4 years ago | |
test | 4 years ago | |
web | 4 years ago | |
.gitignore | 5 years ago | |
ISSUE_TEMPLATE.md | 4 years ago | |
README.md | 4 years ago | |
docker-compose.yml | 4 years ago | |
symfony | 6 years ago |
Plateforme du réseau de distribution porté par la Coop du Tilleul
https://agora.tera.coop/gogs/tera.coop/katao-coop-tilleul/issues
Cette application utilise Symfony 1.1.9 ! Il faut donc un environnement avec php5.
Tout d'abord, clôner ce dépôt :
$ git clone https://agora.tera.coop/gogs/tera.coop/katao-coop-tilleul.git
$ cd katao-coop-tilleul
On construit les différentes images pour Docker :
$ docker-compose build
Puis on lance le bouzin :
$ docker-compose up
On peut vérifier que tout tourne correctement (tout doit être à "up") :
$ docker-compose ps
La gestions des droits d'accès avec Docker et les volumes n'est pas simple, voici une solution :
$ mkdir cache web/uploads
$ sudo chmod -R 777 cache log logs web/uploads
On modifie le fichier /etc/hosts
pour faire pointer katao.local
et admin.katao.local
sur notre container nouvellement créé :
$ echo "$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -f name=apache-php -q)) katao.local" | sudo tee --append /etc/hosts
$ echo "$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -f name=apache-php -q)) admin.katao.local" | sudo tee --append /etc/hosts
Remplacer [DUMP]
par le nom de votre dump :
$ docker exec -i $(docker ps -f name=db_1 -q) mysql -ukatao -pkatao katao < [DUMP].sql
Normalement, vous devriez avoir un site fonctionnel en tapant katao.local
dans votre navigateur web.
Vous pouvez accéder aux logs symfony et nginx via les fichiers suivants :
logs/nginx
logs/symfony
Pour diverses raisons, on peut avoir besoin d'avoir un accès bash sur nos containers (lancer des commandes symfony ou explorer la bdd).
$ docker exec -it $(docker ps -f name=apache-php -q) bash
ou pour la bdd :
$ docker exec -it $(docker ps -f name=db_1 -q) bash
Nous créeons 2 containers (voir le fichier docker-compose.yml
)
db
: C'est le container Mysqlapache-php
: C'est le container qui contient lees sources de l'application (via un volume qui est monté à l'intérieur)Le container apache-php
est spécifique (contrairement à db
qui utilise directement l'image mariadb
), et est défini dans le fichier docker/apache-php/Dockerfile
.
Pour éviter des problèmes lors du lancement d'apache, on passe par l'exécution d'un script start-apache.sh
.
Pour lancer les tests, taper :
$ php symfony test:all
katao
pour la base de donnéesprod
du fichier suivant pour mettre à jour les informations de connexion à la BDD :
config/databases.yml
Changer la configuration de dev
en prod
dans les fichiers suivants :
web/admin.php
web/api.php
web/index.php
Modifier la section prod
du fichier config/app.yml
(attention à http / https)