Git Product home page Git Product logo

drupal-dockerizer's People

Contributors

danylevskyi avatar dkoltovich avatar svicervlad avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

drupal-dockerizer's Issues

Improve stability by implementing automatic testing

Currently, the development branch is rapidly evolving. While adding new features and enhancements we often adding regressions. Now I think we've reached the critical line. I propose to start implementing the automated testing.

It would be really great to have a first quick test which just installs a fresh Drupal project from scratch. I think this test should mimic the quickstart tutorial for the newcomers.

A quick overview of what could be tested:

  • create a directory structure
  • create Drupal project with composer
  • install a fresh site
  • make sure Drupal has been installed successfully

I'd start with Github Actions.

  • Implement basic test for installing new Drupal #25
  • Implement basic test for using existing database #26
  • Implement test for SSL configuration #30
  • Implement test for spinning up multiple environments #32
  • Implement test for Drupal Solr functionality #43

Private files directory not configured

Describe the bug
Some module for example webforms use private directory, but its not implement in drupal-dockerizer

To Reproduce
Try to create some file in private directory you should have error:

The 'File' element is unavailable because a private files directory has not been configured and public file uploads have not been enabled.

Expected behavior
File should created in private directory without any errors

Terminal Output or Screenshots
image

Configuration
Any configuration

Environment (please complete the following information):

  • OS: archlinux
  • Drupal Dockerizer version latest main
  • Docker version 20.10.6, build 370c28948e
  • Docker compose version 1.29.1
  • Ansible version 2.10.8
  • Browser is not important

Solr 8 container always restart

When i configure drupal-dockerizer.yml with solr setup. Container does not work correctly

Steps to reproduce:

  • run ansible-playbook main.yml -K

Expected behavior
Container with solr should work correctly

Terminal Output or Screenshots

Cannot write to /var/solr as 1000:1000
drwxrwx--- 1 8983 root 36 Apr 21 13:06 /var/solr

Configuration

solr: true
solr_configs_path: 'path/to/solr/configuration'
solr_version: 8

Environment:

  • OS: archlinux
  • Drupal Dockerizer version latest main
  • Docker version 20.10.6, build 370c28948e
  • Docker compose version 1.29.1
  • Ansible version 2.10.8
  • Browser is not important

Implement preflight checks

I think Drupal Dockerizer should check possible misconfiguration issues or missing requirements. I'd like to propose to run preflight checks before starting provisioning and communicate with the user clearly.

For example. Let's say a user is not in the docker group.
Let's check it and if not stop the execution and advice the user to finish the docker configuration.

Let's ignore runtime directory files

Is your feature request related to a problem? Please describe.
image

Describe the solution you'd like
I'd like to ignore those system files. Let's make the directory name like runtime-{{project_name}} and add this dir to git ignore file.

Implement faster import for large databases

Problem

In some Drupal projects we have a large database, we must have methods to quickly export / import the database

Solution

We can compress the database volume`s to an archive and then extract it.

Health-checking for database sometime crash on fresh hosts setup

Describe the bug
Docker Compose health-check fail on fresh installations

To Reproduce
Remove all pulled and build images and run up.yml playbook

Expected behavior
up.yml playbook should be done without errors

Terminal Output or Screenshots
See failed tests https://github.com/jet-dev-team/drupal-dockerizer/runs/2772064705?check_suite_focus=true

Configuration
Any configuration.

Environment :
Fail on all platforms

Additional context
We should run docker-compose build separately before run docker-compose up: health-check start counting time immediately after run up command that means time for pull and build images count in health-check timeout

Add mail catcher functionality

We have Drupal projects with mail functionality, we need tools for testings email send

Add mailhog or mailcatcher service

Add checks of ports availability

There are some cases when port 80 might be already used. And it can cause an error with not clear error message.
It would be nice to add some checks of ports availability.

Add nodejs support

I have drupal projects where need build themes and js librarry by nodejs. If we wiil have nodejs in websever container we will spend less time to build projects.

I think need add nvm to webserver container

Fix adminer for remote developing

Adminer container does not expose port if enabled docker_network_gateway_ip

To Reproduce
Run ansible-playbook up.yml

Expected behavior
Adminer should expose port when port seted in cofiguration

Configuration

install_adminer: true
adminer_port: 8080

Environment:

  • OS: Ubuntu 20.04
  • Drupal Dockerizer main
  • Docker version any
  • Docker compose version any
  • Ansible version any
  • Browser any

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.