You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
afornerot e52fdd9083 fix: validator (#8) 1 month ago
.githooks chore: add code quality tools 2 months ago
.jenkins chore: add jenkins validation pipeline 2 months ago
.vscode first commit symfony 6 4 months ago
assets fix(fixtureavatar): fixcture auto avatar & timesession & font & menu & redirect 2 months ago
bin cron on reconfigure 3 months ago
config fix(fixtureavatar): fixcture auto avatar & timesession & font & menu & redirect 2 months ago
containers login app hydra 3 months ago
migrations fix(activeuser): user isactive & adress niveau & route all 2 months ago
public upload init move to media 3 months ago
src fix: validator (#8) 1 month ago
templates fix: validator (#8) 1 month ago
tests first commit symfony 6 4 months ago
tools chore: add code quality tools 2 months ago
translations first commit symfony 6 4 months ago
.env fix(fixtureavatar): fixcture auto avatar & timesession & font & menu & redirect 2 months ago
.gitignore chore: add code quality tools 2 months ago
.php-cs-fixer.dist.php chore: add code quality tools 2 months ago
.php-version fix(morelevel): level mandatory in proil 2 months ago
Jenkinsfile chore: add jenkins validation pipeline 2 months ago
Makefile fix(continuous-integration): correction point phpstan de level 1 2 months ago
README.md first commit symfony 6 4 months ago
commitlint.config.js chore: add code quality tools 2 months ago
composer.json fix(fixtureavatar): fixcture auto avatar & timesession & font & menu & redirect 2 months ago
composer.lock fix(fixtureavatar): fixcture auto avatar & timesession & font & menu & redirect 2 months ago
docker-compose.yml reglage css 3 months ago
package-lock.json chore: add code quality tools 2 months ago
package.json chore: add code quality tools 2 months ago
phpunit.xml.dist first commit symfony 6 4 months ago
symfony.lock fix(manager): add doctrine fixtures 2 months ago
webpack.config.js first commit symfony 6 4 months ago
yarn.lock fix(morelevel): ajout de niveau03 et niveau04 2 months ago

README.md

NINESKELETOR

Squelette applicatif symfony

Installation for local dev

curl -1sLf 'https://dl.cloudsmith.io/public/symfony/stable/setup.deb.sh' | sudo -E bash  
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -  
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list  
apt-get update  
apt-get install git docker-compose composer symfony-cli php php-xml php-zip php-gd php-curl php-pgsql yarn  
git clone https://forge.cadoles.com/Cadoles/nineskeletor.git  
cd nineskeletor  
symfony server:ca:install  
cp .env .env.local  

Change in .env.local APP_SECRET variabile
This secret is the init password for admin user

Change in .env.local MERCURE_JWT_SECRET variable
And report this secret in docker-compose.yml MERCURE_PUBLISHER_JWT_KEY and MERCURE_SUBSCRIBER_JWT_KEY

And finish with

bin/reconfigure.sh

Run for local

symfony server:start

Installation for apache

exec installation for local dev except /bin/reconfigure.sh

Between
Change in .env.local APP_WEBURL variable
For sample

APP_WEBURL=MyDomaine

Change in .env.local MERCURE variable like
The /hub alias must be the same on Apache configuration ProxyPass and ProxyPassReverse

MERCURE_URL=http://MyDomaine/hub/.well-known/mercure
MERCURE_PUBLIC_URL=http://MyDomaine/hub/.well-known/mercure  

Create the file docker-compose.override.yml like
The port 9090 must be the same in the apache configuration ProxyPass and ProxyPassReverse

version: '3'

services:
  mercure:
    ports:
      - "9090:80"    
    environment:
      SERVER_NAME: ':80'
      MERCURE_PUBLISHER_JWT_KEY: '!ChangeMe!'
      MERCURE_SUBSCRIBER_JWT_KEY: '!ChangeMe!'
      MERCURE_EXTRA_DIRECTIVES: |
        cors_origins http://MyDomaine

And finish with

bin/reconfigure.sh

After install and configure apache

apt-get install apache libmodapache2
a2enmod rewrite proxy_http
service apache2 restart

sample apache configuration in /etc/apache2/site-available/000-

<VirtualHost *:80>
	DocumentRoot /var/www/html/nineskeletor/public
 	CustomLog /var/log/apache2/access.log common
    ErrorLog /var/log/apache2/error.log

    <Directory /var/www/html/nineskeletor/public>
        DirectoryIndex index.php

        <IfModule mod_negotiation.c>
            Options -MultiViews
        </IfModule>

        <IfModule mod_rewrite.c>
            RewriteEngine On

            RewriteCond %{REQUEST_URI}::$0 ^(/.+)/(.*)::\2$
            RewriteRule .* - [E=BASE:%1]

            RewriteCond %{HTTP:Authorization} .+
            RewriteRule ^ - [E=HTTP_AUTHORIZATION:%0]

            RewriteCond %{ENV:REDIRECT_STATUS} =""
            RewriteRule ^index\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L]

            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^ %{ENV:BASE}/index.php [L]
        </IfModule>

        <IfModule !mod_rewrite.c>
            <IfModule mod_alias.c>
                RedirectMatch 307 ^/$ /index.php/
            </IfModule>
        </IfModule>
    </Directory>

    # For mercure server
    ProxyPass /hub/ http://localhost:9090/
    ProxyPassReverse /hub/ http://localhost:9090/

</VirtualHost>

<VirtualHost *:1080>
    # For mailer server
    ProxyPass / http://localhost:1080/
    ProxyPassReverse / http://localhost:1080/
</VirtualHost>

Cron Job

Make sure the cron job is running all the minute
You can copy this bin/nineskeletor.cron in your crontab

cp /var/www/html/nineskeletor/bin/nineskeletor.cron /etc/cron.d/nineskeletor

Messenger worker

Make sure the messenger consume the bus
Needed to send mail You can copy this bin/nineskeletor.service in your systemd

cp /var/www/html/nineskeletor/bin/nineskeletor.service /etc/systemd/system/
systemctl enable nineskeletor.service
systemctl start nineskeletor.service