From b445e9f4e2392e86c5fdaca22366455c2d2bb762 Mon Sep 17 00:00:00 2001 From: cytopia Date: Mon, 2 Apr 2018 16:35:27 +0200 Subject: [PATCH] Documentation: FAQ --- docs/configuration-files/env-file.rst | 2 + docs/support/faq.rst | 197 ++++++++++++++++++++++++++ docs/support/troubleshooting.rst | 2 + 3 files changed, 201 insertions(+) create mode 100644 docs/support/faq.rst diff --git a/docs/configuration-files/env-file.rst b/docs/configuration-files/env-file.rst index 5d3576a7..1f90bbb9 100644 --- a/docs/configuration-files/env-file.rst +++ b/docs/configuration-files/env-file.rst @@ -1228,6 +1228,8 @@ changing the server name or adding locations to other assets. MySQL ----- +.. _env_mysql_root_password: + MYSQL_ROOT_PASSWORD ^^^^^^^^^^^^^^^^^^^ diff --git a/docs/support/faq.rst b/docs/support/faq.rst new file mode 100644 index 00000000..c8e1c57c --- /dev/null +++ b/docs/support/faq.rst @@ -0,0 +1,197 @@ +.. _faq: + +*** +FAQ +*** + +Find common questions and answers here. + + +**Table of Contents** + +.. contents:: :local: + + +General +======= + +Are there any differences between native Docker and Docker Toolbox? +------------------------------------------------------------------- + +Yes, read :ref:`docker_toolbox` to find out more. + + +.. _faq_data_dir_separated_by_version: + +Why are mounted MySQL data directories separated by version? +------------------------------------------------------------ + +This is just a pre-caution. Imagine they would link to the same datadir. You start the Devilbox +with mysql 5.5, create a database and add some data. Now you decide to switch to mysql 5.7 and +restart the devilbox. The newer mysql version will probably upgrade the data leaving it unable to +start with older mysql versions. + + +Why are mounted PostgreSQL data directories separated by version? +----------------------------------------------------------------- + +See: :ref:`faq_data_dir_separated_by_version` + + +Why are mounted MongoDB data directories separated by version? +-------------------------------------------------------------- + +See: :ref:`faq_data_dir_separated_by_version` + + +Why do the user/group permissions of log/ or cfg/ directories show 1000? +------------------------------------------------------------------------ + +Uid and Gid are set to 1000 by default. You can alter them to match the uid/gid of your current +user. Open the ``.env`` file and change the sections ``NEW_UID`` and ``NEW_GID``. When you start +up the devilbox, the PHP container will use these values for its user. + +.. seealso:: :ref:`env_new_uid` and :ref:`env_new_gid` + + +Can I not just comment out the service in the .env file? +-------------------------------------------------------- + +No, don't do this. This will lead to unexpected behaviour (different versions will be loaded). +The ``.env`` file allows you to configure the devilbox, but not to start services selectively. + + +Are there any required services that must/will always be started? +----------------------------------------------------------------- + +Yes. ``http`` and ``php`` will automatically always be started (due to dependencies inside +``docker-compose.yml``) if you specify them or not. + + +What PHP Modules are available? +------------------------------- + +The Devilbox is a development stack, so it is made sure that a lot of PHP modules are available +out of the box in order to work with many different frameworks. + +Available PHP modules can be seen at the PHP Docker image repository. + +.. seealso:: https://github.com/devilbox/docker-php-fpm + + +Configuration +============= + +Can I load custom PHP modules without rebuilding the Docker image? +------------------------------------------------------------------ + +Yes, see :ref:`custom_php_modules` + + +Can I load custom Apache modules without rebuilding the Docker image? +--------------------------------------------------------------------- + +Yes, see :ref:`custom_apache_modules` + + +Can I change the MySQL root password? +------------------------------------- + +Yes, you can change the password of the MySQL root user. If you do so, you must also set the new +password in your ``.env`` file. See :ref:`env_mysql_root_password` for how to change this value. + + +Can I change php.ini? +--------------------- + +Yes, php.ini directives can be changed for each PHP version separately. See :ref:`php_ini` + + +Can I change my.cnf? +-------------------- + +Yes, my.cnf directives can be changed for each MySQL version separately. See :ref:`my_cnf` + + +Can I change the project virtual host domain ``.loc``? +------------------------------------------------------ + +Yes, the ``.env`` variable :ref:`env_tld_suffix` can be changed to whatever domain or subdomain +you want. See :ref:`env_tld_suffix`. + +.. warning:: + Be aware not to use ``dev`` or ``localhost``. See :ref:`env_tld_suffix` for more details. + + +Can I just start PHP and MySQL instead of all container? +-------------------------------------------------------- + +Yes, every Docker container is optional. The Devilbox allows for selective startup. See +:ref:`start_the_devilbox`. + + +Do I always have to edit ``/etc/hosts`` for new projects? +--------------------------------------------------------- + +You need a valid DNS entry for every project that points to the Httpd server. As those records +don't exists by default, you will have to create them. However, the Devilbox has a bundled DNS +server that can automate this for you. The only thing you have to do for that to work is to add +this DNS server's IP address to your ``/etc/resolv.conf``. +See :ref:`global_configuration_auto_dns` for detailed instructions. + + +Compatibility +============= + +Does it work with CakePHP? +-------------------------- + +Yes, see :ref:`example_setup_cakephp` + + +Does it work with Drupal? +------------------------- + +Yes, see :ref:`example_setup_drupal` + + +Does it work with Joomla? +------------------------- + +Yes, see :ref:`example_setup_joomla` + + +Does it work with Laravel? +-------------------------- + +Yes, see :ref:`example_setup_laravel` + + +Does it work with Phalcon? +-------------------------- + +Yes, see :ref:`example_setup_phalcon` + + +Does it work with Symfony? +-------------------------- + +Yes, see :ref:`example_setup_symfony` + + +Does it work with Wordpress? +---------------------------- + +Yes, see :ref:`example_setup_wordpress` + + +Does it work with Yii? +---------------------- + +Yes, see :ref:`example_setup_yii` + + +Does it work with Zend? +----------------------- + +Yes, see :ref:`example_setup_zend` diff --git a/docs/support/troubleshooting.rst b/docs/support/troubleshooting.rst index c75c5dac..6da99fcf 100644 --- a/docs/support/troubleshooting.rst +++ b/docs/support/troubleshooting.rst @@ -31,3 +31,5 @@ In order to remove the container do the following: # Remove the stopped container (IMPORTANT!) # After the removal it will be re-created during next run host> docker-compose rm -f + +.. seealso:: :ref:`remove_stopped_container`