add drupal submodule
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
COMPOSE_PROJECT_NAME=popsu
|
COMPOSE_PROJECT_NAME=training
|
||||||
|
|
||||||
PROJECT_ROOT=./src
|
PROJECT_ROOT=./src
|
||||||
LOG_ROOT=./log
|
LOG_ROOT=./log
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
[submodule "src"]
|
||||||
|
path = src
|
||||||
|
url = https://figureslibres.io/gogs/ouidade/drupal-training.git
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
server {
|
server {
|
||||||
listen 80;
|
listen 80;
|
||||||
root /var/www/d7;
|
root /var/www/training/web;
|
||||||
index index.html index.php;
|
index index.html index.php;
|
||||||
server_name dev.d7.popsu.archi.fr;
|
server_name dev.training.fr;
|
||||||
|
|
||||||
charset utf-8;
|
charset utf-8;
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ server {
|
|||||||
location = /robots.txt { access_log off; log_not_found off; }
|
location = /robots.txt { access_log off; log_not_found off; }
|
||||||
|
|
||||||
access_log on;
|
access_log on;
|
||||||
error_log /var/log/nginx/error-d7.log error;
|
error_log /var/log/nginx/error.log error;
|
||||||
|
|
||||||
sendfile off;
|
sendfile off;
|
||||||
|
|
||||||
@@ -22,45 +22,7 @@ server {
|
|||||||
|
|
||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
fastcgi_split_path_info ^(.+\.php)(/.+)$;
|
fastcgi_split_path_info ^(.+\.php)(/.+)$;
|
||||||
fastcgi_pass php_d7:9000;
|
fastcgi_pass php:9000;
|
||||||
fastcgi_index index.php;
|
|
||||||
include fastcgi_params;
|
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
|
||||||
fastcgi_intercept_errors off;
|
|
||||||
fastcgi_buffer_size 16k;
|
|
||||||
fastcgi_buffers 4 16k;
|
|
||||||
}
|
|
||||||
|
|
||||||
location ~ /\.ht {
|
|
||||||
deny all;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
server {
|
|
||||||
listen 80;
|
|
||||||
root /var/www/d9/web;
|
|
||||||
index index.html index.php;
|
|
||||||
server_name dev.d9.popsu.archi.fr;
|
|
||||||
|
|
||||||
charset utf-8;
|
|
||||||
|
|
||||||
location / {
|
|
||||||
try_files $uri $uri/ /index.php?$query_string;
|
|
||||||
}
|
|
||||||
|
|
||||||
location = /favicon.ico { access_log off; log_not_found off; }
|
|
||||||
location = /robots.txt { access_log off; log_not_found off; }
|
|
||||||
|
|
||||||
access_log on;
|
|
||||||
error_log /var/log/nginx/error-d9.log error;
|
|
||||||
|
|
||||||
sendfile off;
|
|
||||||
|
|
||||||
client_max_body_size 100m;
|
|
||||||
|
|
||||||
location ~ \.php$ {
|
|
||||||
fastcgi_split_path_info ^(.+\.php)(/.+)$;
|
|
||||||
fastcgi_pass php_d9:9000;
|
|
||||||
fastcgi_index index.php;
|
fastcgi_index index.php;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ https://wiki.archlinux.org/index.php/Docker#Installation
|
|||||||
this will clone this repos (main docker environement) and the training.fr drupal 9 source code (without sites/default folder nor mysq ddbs)
|
this will clone this repos (main docker environement) and the training.fr drupal 9 source code (without sites/default folder nor mysq ddbs)
|
||||||
|
|
||||||
```
|
```
|
||||||
git clone --recursive -o figli https://figureslibres.io/gogs/bachir/docker-training.git
|
git clone --recursive -o figli https://figureslibres.io/gogs/ouidade/docker-training.git
|
||||||
```
|
```
|
||||||
|
|
||||||
submodules :
|
submodules :
|
||||||
@@ -40,17 +40,17 @@ rsync the files from you know where (if you don't, you don't) to src/web/sites/d
|
|||||||
copy ```ressources/xdebug.ini.exemple``` to ```ressources/xdebug.ini``` and edit the ```xdebug.remote_host``` ip to your host locale ip (e.g. : 192.168.0.23) (or once the docker is started to the host ip from the container point of vu e.g. 172.21.0.1)
|
copy ```ressources/xdebug.ini.exemple``` to ```ressources/xdebug.ini``` and edit the ```xdebug.remote_host``` ip to your host locale ip (e.g. : 192.168.0.23) (or once the docker is started to the host ip from the container point of vu e.g. 172.21.0.1)
|
||||||
|
|
||||||
## Mysql
|
## Mysql
|
||||||
Copy your-sql-dump.sql files into ```./ressources/training_d9.sql```
|
Copy your-sql-dump.sql files into ```./ressources/training.sql```
|
||||||
They will be automaticly imported into the mysql containers dbs (only) on the first docker-compose up
|
They will be automaticly imported into the mysql containers dbs (only) on the first docker-compose up
|
||||||
|
|
||||||
## Hosts and reverse proxy
|
## Hosts and reverse proxy
|
||||||
|
|
||||||
add to your /etc/hosts :
|
add to your /etc/hosts :
|
||||||
```
|
```
|
||||||
127.0.0.1 dev.d9.training.archi.fr
|
127.0.0.1 dev.training.fr
|
||||||
127.0.0.1 dev.phpmyadmin.training.archi.fr
|
127.0.0.1 dev.phpmyadmin.training.fr
|
||||||
```
|
```
|
||||||
configure your vhosts to add a reverse proxy that will redirect the dev.materio.com to our container
|
configure your vhosts to add a reverse proxy that will redirect the dev.training.fr to our container
|
||||||
|
|
||||||
### nginx
|
### nginx
|
||||||
|
|
||||||
@@ -61,7 +61,7 @@ sudo mkdir /etc/var/log/training
|
|||||||
```nginx
|
```nginx
|
||||||
server {
|
server {
|
||||||
listen 80;
|
listen 80;
|
||||||
server_name dev.training.archi.fr;
|
server_name dev.training.fr;
|
||||||
|
|
||||||
access_log off;
|
access_log off;
|
||||||
error_log /var/log/nginx/training/error.log error;
|
error_log /var/log/nginx/training/error.log error;
|
||||||
|
|||||||
@@ -18,10 +18,15 @@ change occurence in Readme (ctrl + D pour sélectionner tout en même temps)
|
|||||||
dossier Docker: php mettre bonne version
|
dossier Docker: php mettre bonne version
|
||||||
Docker-compose.yml
|
Docker-compose.yml
|
||||||
Makefile
|
Makefile
|
||||||
|
.env (project name donne le nom aux containers)
|
||||||
|
docker > nginx > default.conf
|
||||||
|
|
||||||
### xdebug
|
|
||||||
|
## xdebug
|
||||||
copy ```ressources/xdebug.ini.exemple``` to ```ressources/xdebug.ini```
|
copy ```ressources/xdebug.ini.exemple``` to ```ressources/xdebug.ini```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### git
|
### git
|
||||||
|
|
||||||
remove old folder git
|
remove old folder git
|
||||||
@@ -30,17 +35,229 @@ remove old folder git
|
|||||||
rm -rf .git
|
rm -rf .git
|
||||||
rm .gitmodules
|
rm .gitmodules
|
||||||
```
|
```
|
||||||
|
create new git repositorie
|
||||||
|
|
||||||
```
|
|
||||||
git status
|
|
||||||
```
|
|
||||||
```
|
```
|
||||||
git init
|
git init
|
||||||
git add .
|
git add .
|
||||||
git commit -m 'first commit'
|
git commit -m 'first commit'
|
||||||
|
git remote add origin https://figureslibres.io/gogs/ouidade/docker-training.git
|
||||||
|
git push -u origin master
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Hosts and reverse proxy
|
||||||
|
|
||||||
|
add to your /etc/hosts :
|
||||||
|
```
|
||||||
|
127.0.0.1 dev.training.fr
|
||||||
|
127.0.0.1 dev.phpmyadmin.training.fr
|
||||||
|
```
|
||||||
|
configure your vhosts to add a reverse proxy that will redirect the dev.training.fr to our container
|
||||||
|
|
||||||
|
|
||||||
|
create new file, dev.training.fr.conf, in /etc/nginx/sites-available
|
||||||
|
|
||||||
|
```
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name dev.training.fr;
|
||||||
|
|
||||||
|
access_log off;
|
||||||
|
error_log /var/log/nginx/training/error.log error;
|
||||||
|
|
||||||
|
client_max_body_size 100m;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://127.0.0.1:8980;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_buffer_size 128k;
|
||||||
|
proxy_buffers 4 256k;
|
||||||
|
proxy_busy_buffers_size 256k;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name dev.phpmyadmin.training.fr;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://127.0.0.1:8981;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_buffer_size 128k;
|
||||||
|
proxy_buffers 4 256k;
|
||||||
|
proxy_busy_buffers_size 256k;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo ln -s /etc/nginx/sites-available/dev.training.fr.conf /etc/nginx/sites-enabled
|
||||||
|
```
|
||||||
|
|
||||||
|
``` sudo nginx -t ``` all should be ok
|
||||||
|
```
|
||||||
|
sudo systemctl restart nginx
|
||||||
|
```
|
||||||
|
|
||||||
|
### build docker
|
||||||
|
```
|
||||||
|
make build
|
||||||
|
make up
|
||||||
|
make ps
|
||||||
|
```
|
||||||
|
|
||||||
|
### instal drupal with composer
|
||||||
|
|
||||||
|
```
|
||||||
|
cd public_html
|
||||||
|
composer create-project drupal/recommended-project:^9.5 .
|
||||||
|
```
|
||||||
|
|
||||||
|
## clone this profile into profiles folder
|
||||||
|
```
|
||||||
|
cd profiles
|
||||||
|
git clone -o figli https://figureslibres.io/gogs/bachir/drupal-starterkit-profile.git
|
||||||
|
```
|
||||||
|
|
||||||
|
## include the profile's composer file to the main drupal's composer file
|
||||||
|
|
||||||
|
install composer-merge-plugin
|
||||||
|
```
|
||||||
|
composer require wikimedia/composer-merge-plugin
|
||||||
|
```
|
||||||
|
then in main drupal's composer.js file add this in extra
|
||||||
|
```
|
||||||
|
"extra": {
|
||||||
|
...
|
||||||
|
"merge-plugin": {
|
||||||
|
"include": [
|
||||||
|
"web/profiles/d8-starterkit-profile/composer.json"
|
||||||
|
],
|
||||||
|
"recurse": true,
|
||||||
|
"replace": false,
|
||||||
|
"merge-extra": true
|
||||||
|
}
|
||||||
|
...
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## install the profile's merged dependencies with composer
|
||||||
|
|
||||||
|
cd ../
|
||||||
|
composer update
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### sites/default setup
|
||||||
|
|
||||||
|
```
|
||||||
|
mkdir -p web/sites/default/files
|
||||||
|
cp web/sites/default/default.settings.php web/sites/default/settings.php
|
||||||
|
```
|
||||||
|
in docker exit container php and re-log as root in php container
|
||||||
|
```
|
||||||
|
docker exec -u 0 -it training-php-1 bash
|
||||||
|
```
|
||||||
|
then aply changes
|
||||||
|
```
|
||||||
|
chgrp -R www-data web/sites/default/files
|
||||||
|
chgrp -R www-data web/sites/default/settings.php
|
||||||
|
chmod g+r web/sites/default/files
|
||||||
|
chmod g+r web/sites/default/settings.php
|
||||||
|
```
|
||||||
|
exit container php as root ```ctrl + D```
|
||||||
|
|
||||||
|
### install database with install drupal on navigator
|
||||||
|
|
||||||
|
choose profile figli starter kit
|
||||||
|
|
||||||
|
for set up database use info in .env file (for work localserver only passwords very basic, be carefull if on line)
|
||||||
|
|
||||||
|
advanced options :
|
||||||
|
hosts : mysql
|
||||||
|
|
||||||
|
in dump databse there will be files but also modules config
|
||||||
|
|
||||||
|
|
||||||
|
### git the drupal (src folder)
|
||||||
|
|
||||||
|
```
|
||||||
|
git init
|
||||||
|
```
|
||||||
|
create a .gitignore file
|
||||||
|
|
||||||
|
```
|
||||||
|
# Ignore directories generated by Composer
|
||||||
|
/drush/contrib/
|
||||||
|
/vendor/
|
||||||
|
/web/core/
|
||||||
|
/web/modules/contrib/
|
||||||
|
/web/themes/contrib/
|
||||||
|
/web/profiles/contrib/
|
||||||
|
/web/libraries/
|
||||||
|
composer.lock
|
||||||
|
# Ignore sensitive information
|
||||||
|
/web/sites/*/settings.php
|
||||||
|
/web/sites/*/settings.local.php
|
||||||
|
/web/sites/*/services*.yml
|
||||||
|
|
||||||
|
# Ignore Drupal's file directory
|
||||||
|
/web/sites/*/files/
|
||||||
|
|
||||||
|
# Ignore SimpleTest multi-site environment.
|
||||||
|
/web/sites/simpletest
|
||||||
|
|
||||||
|
# Ignore files generated by PhpStorm
|
||||||
|
/.idea/
|
||||||
|
|
||||||
|
# Ignore .env files as they are personal
|
||||||
|
/.env
|
||||||
|
|
||||||
|
# npm
|
||||||
|
node_modules/
|
||||||
|
|
||||||
|
*.patch
|
||||||
|
/.csslintrc
|
||||||
|
/.eslintrc.json
|
||||||
|
/.ht.router.php
|
||||||
|
/.htaccess
|
||||||
|
/INSTALL.txt
|
||||||
|
/README.txt
|
||||||
|
/autoload.php
|
||||||
|
/example.gitignore
|
||||||
|
/index.php
|
||||||
|
/robots.txt
|
||||||
|
/update.php
|
||||||
|
/web.config
|
||||||
|
|
||||||
|
/web/.vscode/*
|
||||||
|
```
|
||||||
|
```
|
||||||
|
git status
|
||||||
|
git add .
|
||||||
|
|
||||||
|
```
|
||||||
|
remove file D8-starterit-profile from the git index in order to add it as a submodule.
|
||||||
|
```git reset web/profiles/d8-starterkit-profile```
|
||||||
|
|
||||||
|
add submodule
|
||||||
|
```
|
||||||
|
git submodule add https://figureslibres.io/gogs/bachir/d8-starterkit-profile.git web/profiles/d8-starterkit-profile
|
||||||
|
```
|
||||||
|
```
|
||||||
|
git commit -m "first drupal instal working"
|
||||||
|
```
|
||||||
|
Create new repository on gogs, for durpal
|
||||||
|
then
|
||||||
|
```
|
||||||
|
git remote add origin https://figureslibres.io/gogs/ouidade/drupal-training.git
|
||||||
|
```
|
||||||
|
```
|
||||||
|
git push origin master
|
||||||
|
```
|
||||||
Submodule
+1
Submodule src added at 12bb523bd4
Reference in New Issue
Block a user