skilld-labs / sdc
Project template for Drupal 9 projects with composer
Installs: 11
Dependents: 0
Suggesters: 0
Security: 0
Stars: 20
Watchers: 26
Forks: 32
Open Issues: 35
Language:Makefile
Type:project
Requires
- ckeditor/panelbutton: ^4.10
- composer/installers: ^1.2
- cweagans/composer-patches: ^1.6.5
- drupal-composer/drupal-scaffold: ^2.5
- drupal/admin_toolbar: ^1
- drupal/components: ^1
- drupal/config_installer: ^1
- drupal/core: ^8.6.7
- drupal/default_content: ^1
- drupal/file_entity: ^2
- drupal/panelbutton: ^1
- drupal/styleguide: ^1
- drupal/swiftmailer: ^1
- drupal/token: ^1
- webflo/drupal-finder: ^1.1
- webmozart/path-util: ^2.3
- wikimedia/composer-merge-plugin: ^1.4
- zaporylie/composer-drupal-optimizations: ^1.0
Conflicts
- dev-master
- v1.0.rc
- v1.0.beta
- dev-otel
- dev-main
- dev-414-add-0pen-social-to-sdc
- dev-k3
- dev-341-auto-set-shm-size
- dev-add-solr-dependancy-commented
- dev-fix_tag_pipelines
- dev-fix_upgrade_status_errors
- dev-upgrade_status_3
- dev-bower_assets
- dev-redis_setup_improvements
- dev-composer_cache2
- dev-storybook_deploy_stage_update
- dev-front_cache
- dev-add_essential_modules
- dev-gitlab-actions
This package is auto-updated.
Last update: 2025-02-20 19:14:05 UTC
README
Overview
Skilld docker container is a developer starterkit for your Drupal project.
What is this?
- This is a developer starterkit which can be used for local drupal development or/and integration into your CI/CD processes.
What is this not?
- This is not
ready to use tool
, tools list you can find in this google doc - Another quick solution https://gist.github.com/andypost/f8e359f2e80cb7d4737350189f009646
Quickstart
-
Install docker for Linux, Mac, Windows
- Check post-installation steps for Linux version 18.06.0 or later
-
Install Docker Compose V2 version 2.0 or later
-
Copy .env.default to .env, more information about enviroment file can be found docs.docker.com
-
Copy docker-compose.override.yml.default to docker-compose.override.yml, update parts you want to overwrite.
- docker-compose.yml contains the base requirements of a working Drupal site. It should not be updated.
-
Update .gitlab-ci.yml
variables
section THEME_PATH to make front gitlab CI works. -
Run
make all
Used variables
Persistent Mysql
- By default sqlite storage used, which is created inside php container, if you need persistent data to be saved:
- Update
docker-compose.override.yml
, set
php: depends_on: - mysql
and update mysql container partmysql: image: mysql:8.0-oraclelinux8 ...
- Update
.env
file, and setDB_URL=mysql://db:db@mysql/db
- Update
Network
- Every time project built, it take new available IP address, if you want to have persistent IP, uncomment lines from
docker-compose.override.yml
networks: front: driver: bridge ipam: driver: default config: - subnet: "172.18.0.5"
Usage
make
- Show this info.make all
- Full project install from the scratch.make clean
- Totally remove project build folder, files, docker containers and network.make si
- Install/reinstall site.make info
- Show project services IP addresses.make diff
- Show changes in overrides (needs localdiff
command).make exec
-docker exec
into php container.make exec0
-docker exec
into php container as root.make dev
- Devel + kint setup, and config for Twig debug mode, disable aggregation.make drush [command]
- execute drush command.make phpcs
- Check codebase withphpcs
sniffers to make sure it conforms https://www.drupal.org/docs/develop/standards.make phpcbf
- Fix codebase according to Drupal standards https://www.drupal.org/docs/develop/standards.make front
- Builds frontend tasks.make lint
- Runs frontend linters.make storybook
- Runs storybook in current theme.make blackfire
- Adds and enables blackfire.io php extension, needs configuration in docker-compose.override.yml.make newrelic
- Adds and enables newrelic.com php extension, needs configurationNEW_RELIC_LICENSE_KEY
environment variable defined with valid license key.make xdebug (on|off|status)
- Enable, disable or report status of Xdebug PHP extension.
Additional goals
- If you need to add your custom/specific project goal, create new file in
scripts/makefile/myfile.mk
and describe goal inside. Example can be found atscripts/makefile/backup.mk
Support
- This project is supported by © Skilld SAS
Drush commands
- You can run any drush command
make drush [command -- -argument]
Troubleshooting
- Use our issue queue, which is public, to search or add new issues.
Git hooks
- Project includes git hooks to perform automatic validation when certain git commands are executed
- You can bypass this validation with option
--no-verify
License
This project is licensed under the MIT open source license.