kandi background
Explore Kits

devilbox | modern Docker LAMP stack and MEAN stack | Continuous Deployment library

 by   cytopia PHP Version: v2.1.1 License: MIT

 by   cytopia PHP Version: v2.1.1 License: MIT

Download this library from

kandi X-RAY | devilbox Summary

devilbox is a PHP library typically used in Devops, Continuous Deployment, Nginx, MariaDB, Docker, Wordpress applications. devilbox has no bugs, it has no vulnerabilities, it has a Permissive License and it has medium support. You can download it from GitHub.
The Devilbox has everything setup for you. The only thing you will have to install is Docker and Docker Compose. Virtual hosts and DNS entries will be created automatically, just by adding new project folders. Documentation: Setup Auto DNS | Setup valid HTTPS | Configure Xdebug | Customize PHP.
Support
Support
Quality
Quality
Security
Security
License
License
Reuse
Reuse

kandi-support Support

  • devilbox has a medium active ecosystem.
  • It has 3738 star(s) with 536 fork(s). There are 103 watchers for this library.
  • There were 10 major release(s) in the last 12 months.
  • There are 22 open issues and 531 have been closed. On average issues are closed in 136 days. There are 4 open pull requests and 0 closed requests.
  • It has a neutral sentiment in the developer community.
  • The latest version of devilbox is v2.1.1
devilbox Support
Best in #Continuous Deployment
Average in #Continuous Deployment
devilbox Support
Best in #Continuous Deployment
Average in #Continuous Deployment

quality kandi Quality

  • devilbox has 0 bugs and 1 code smells.
devilbox Quality
Best in #Continuous Deployment
Average in #Continuous Deployment
devilbox Quality
Best in #Continuous Deployment
Average in #Continuous Deployment

securitySecurity

  • devilbox has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
  • devilbox code analysis shows 0 unresolved vulnerabilities.
  • There are 0 security hotspots that need review.
devilbox Security
Best in #Continuous Deployment
Average in #Continuous Deployment
devilbox Security
Best in #Continuous Deployment
Average in #Continuous Deployment

license License

  • devilbox is licensed under the MIT License. This license is Permissive.
  • Permissive licenses have the least restrictions, and you can use them in most projects.
devilbox License
Best in #Continuous Deployment
Average in #Continuous Deployment
devilbox License
Best in #Continuous Deployment
Average in #Continuous Deployment

buildReuse

  • devilbox releases are available to install and integrate.
  • Installation instructions are not available. Examples and code snippets are available.
  • devilbox saves you 44 person hours of effort in developing the same functionality from scratch.
  • It has 118 lines of code, 1 functions and 2 files.
  • It has low code complexity. Code complexity directly impacts maintainability of the code.
devilbox Reuse
Best in #Continuous Deployment
Average in #Continuous Deployment
devilbox Reuse
Best in #Continuous Deployment
Average in #Continuous Deployment
Top functions reviewed by kandi - BETA

kandi has reviewed devilbox and discovered the below as its top functions. This is intended to give you an instant insight into devilbox implemented functionality, and help decide if they suit your requirements.

  • Get document links
    • Returns navigation tabs
      • Get a table definition
        • Return the description of the database .
          • Get privileges .
            • Copy a table
              • Build a version
                • Create an inline crypt function for the mode .
                  • Parse a value .
                    • Returns a description of a collation

                      Get all kandi verified functions for this library.

                      Get all kandi verified functions for this library.

                      devilbox Key Features

                      Core enabled (cannot be disabled): ✔

                      Enabled (can be disabled): 🗸

                      Available, but disabled (can be enabled): d

                      Core enabled (cannot be disabled): ✔

                      Enabled (can be disabled): 🗸

                      Available, but disabled (can be enabled): d

                      Usage

                      copy iconCopydownload iconDownload
                      # Get the Devilbox
                      git clone https://github.com/cytopia/devilbox

                      ORA-28547 with php-fpm in docker container

                      copy iconCopydownload iconDownload
                      # Insert following to .bash_profile or .profile of the User starting the php-fpm
                      export ORACLE_HOME=/usr/lib/oracle/client64
                      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
                      export PATH=$PATH:$ORACLE_HOME/bin
                      export TNS_ADMIN=$ORACLE_HOME/network/admin
                      # Test to Ping Remote Db to be connected  by PHP 
                      tnsping <tns-name of remote DB - i.e. db12c.world>
                       # restart here the php Engine 
                      
                      Final solution:
                      
                      sqlplus foo/foo@\<ip>:\<port>/\<dbname>
                      

                      php-fpm: settings in mods-available/xdebug.ini have no effect

                      copy iconCopydownload iconDownload
                      PHP:  syntax error, unexpected '(' in /etc/php/7.4/cli/conf.d/20-xdebug.ini on line 5
                      
                      zend_extension=xdebug.so
                      xdebug.remote_enable=on
                      xdebug.default_enable=on
                      xdebug.remote_autostart=off
                      ;The default port 9000 doesn’t work as some other service  (don’t remember which one)  is using it as well
                      xdebug.remote_port=10000
                      
                      ;phpstorm's xdebug validate tool suggests:
                      ;xdebug.remote_host=172.27.0.1
                      ;but it's not working
                      ;on mac you have to use this for docker
                      ;xdebug.remote_host=docker.for.mac.localhost
                      ;or  (is the more recent one):
                      xdebug.remote_host = host.docker.internal
                      ;more info:
                      ;https://intellij-support.jetbrains.com/hc/en-us/community/posts/360000229624-Setting-up-xDebug-with-PHPUnit-using-Docker-for-Mac-and-PHPStorm
                      ;https://devilbox-test.readthedocs.io/en/stable/tutorials/enable-xdebug.html
                      ;https://docs.docker.com/docker-for-mac/networking/#use-cases-and-workarounds
                      
                      
                      xdebug.profiler_enable_trigger=1
                      xdebug.profiler_output_name=xdebug-profile-cachegrind.out-%H-%R
                      xdebug.var_display_max_children = 128
                      xdebug.var_display_max_data = 512
                      xdebug.var_display_max_depth = 3
                      xdebug.idekey=PHPSTORM
                      
                      
                      PHP:  syntax error, unexpected '(' in /etc/php/7.4/cli/conf.d/20-xdebug.ini on line 5
                      
                      zend_extension=xdebug.so
                      xdebug.remote_enable=on
                      xdebug.default_enable=on
                      xdebug.remote_autostart=off
                      ;The default port 9000 doesn’t work as some other service  (don’t remember which one)  is using it as well
                      xdebug.remote_port=10000
                      
                      ;phpstorm's xdebug validate tool suggests:
                      ;xdebug.remote_host=172.27.0.1
                      ;but it's not working
                      ;on mac you have to use this for docker
                      ;xdebug.remote_host=docker.for.mac.localhost
                      ;or  (is the more recent one):
                      xdebug.remote_host = host.docker.internal
                      ;more info:
                      ;https://intellij-support.jetbrains.com/hc/en-us/community/posts/360000229624-Setting-up-xDebug-with-PHPUnit-using-Docker-for-Mac-and-PHPStorm
                      ;https://devilbox-test.readthedocs.io/en/stable/tutorials/enable-xdebug.html
                      ;https://docs.docker.com/docker-for-mac/networking/#use-cases-and-workarounds
                      
                      
                      xdebug.profiler_enable_trigger=1
                      xdebug.profiler_output_name=xdebug-profile-cachegrind.out-%H-%R
                      xdebug.var_display_max_children = 128
                      xdebug.var_display_max_data = 512
                      xdebug.var_display_max_depth = 3
                      xdebug.idekey=PHPSTORM
                      
                      

                      Use Docker env vars with PHP 5.2.x

                      copy iconCopydownload iconDownload
                      command: bash -c "DB_HOST='mariadb:3306' && DB_USER='some_user ... & ./start_something.sh"
                      
                      <value name="environment">
                          <!-- Add docker environment variables -->
                          {{ range $k,$v := .Env }}{{ $parts := split $k "APP_" }}{{ if eq (len $parts) 2 -}}
                          <value name="{{ index $parts 1 }}">{{ $v }}</value>
                          {{ end }}{{- end -}}
                          <!-- End Docker Env -->
                      
                      environment:
                          APP_DB_HOST: mariadb:3306
                          APP_DB_USER: ${DB_USER}
                          APP_DB_PASSWORD: ${DB_PASSWORD} 
                          APP_DB_DATABASE: ${DB_DATABASE}
                      
                      <value name="environment">
                          <!-- Add docker environment variables -->
                          {{ range $k,$v := .Env }}{{ $parts := split $k "APP_" }}{{ if eq (len $parts) 2 -}}
                          <value name="{{ index $parts 1 }}">{{ $v }}</value>
                          {{ end }}{{- end -}}
                          <!-- End Docker Env -->
                      
                      environment:
                          APP_DB_HOST: mariadb:3306
                          APP_DB_USER: ${DB_USER}
                          APP_DB_PASSWORD: ${DB_PASSWORD} 
                          APP_DB_DATABASE: ${DB_DATABASE}
                      

                      Community Discussions

                      Trending Discussions on devilbox
                      • ORA-28547 with php-fpm in docker container
                      • DEVILBOX : Using symlinks for data/www/{symbolic_link}
                      • php-fpm: settings in mods-available/xdebug.ini have no effect
                      • Use Docker env vars with PHP 5.2.x
                      Trending Discussions on devilbox

                      QUESTION

                      ORA-28547 with php-fpm in docker container

                      Asked 2020-Oct-18 at 01:23

                      I got a working php-fpm docker container acting as the php backend to a nginx frontend. What I mean by working, is that it renders phpinfo output in the browser as expected. My php-fpm container was produced by php-fpm-7.4 prod of the devilbox docker repo. It has OCI8 enable.

                      The issue: I keep getting ORA-28547 when trying oci_connect

                      What I have done:

                      1--add /usr/lib/oracle/client64/lib to a file inside ld.so.conf.d and run ldconfig -v 2--restart docker container.
                      3-- Now phpinfo shows ORACLE_HOME=/usr/lib/oracle/client64/lib

                      4--Add tnsnames.ora to /usr/lib/oracle/client6/lib/network/admin (there is a README.md file inside that folder that even tells you to do that) 5--Restart docker container again. 6-oci_connect still fails with the same error.

                      What I am missing?

                      Thank you very much for any pointers, I think I have browsed to the end of the internet and back without finding a solution yet.

                      ----SOLUTION: reinstall instantclient, relink libraries (ldconfig) to use new instantclient libraries. Create modified dockerfile to do it when container is created.

                      I modified the Dockerfile file of the php-fpm to add new instant client files and not the one that were provided by the original file. I was not able to make it work with them. I have tried a few times rebuilding the image (docker-compose up --build) and this is the file that does the trick:

                      FROM devilbox/php-fpm:7.4-work

                      #instantclient.conf content: /opt/instantclient RUN echo "/opt/instantclient" >/etc/ld.so.conf.d/instantclient.conf

                      WORKDIR /opt

                      RUN wget https://download.oracle.com/otn_software/linux/instantclient/19800/instantclient-sdk-linux.x64-19.8.0.0.0dbru.zip

                      RUN wget https://download.oracle.com/otn_software/linux/instantclient/19800/instantclient-sqlplus-linux.x64-19.8.0.0.0dbru.zip

                      RUN wget https://download.oracle.com/otn_software/linux/instantclient/19800/instantclient-basic-linux.x64-19.8.0.0.0dbru.zip

                      RUN unzip instantclient-sdk-linux.x64-19.8.0.0.0dbru.zip

                      RUN unzip instantclient-sqlplus-linux.x64-19.8.0.0.0dbru.zip

                      RUN unzip instantclient-basic-linux.x64-19.8.0.0.0dbru.zip

                      RUN mv instantclient_19_8 instantclient

                      ADD tnsnames.ora /opt/instantclient/network/admin

                      RUN ldconfig -v

                      CMD ["php-fpm"]

                      expose 9000

                      ANSWER

                      Answered 2020-Oct-17 at 16:08
                      # Insert following to .bash_profile or .profile of the User starting the php-fpm
                      export ORACLE_HOME=/usr/lib/oracle/client64
                      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
                      export PATH=$PATH:$ORACLE_HOME/bin
                      export TNS_ADMIN=$ORACLE_HOME/network/admin
                      # Test to Ping Remote Db to be connected  by PHP 
                      tnsping <tns-name of remote DB - i.e. db12c.world>
                       # restart here the php Engine 
                      

                      Source https://stackoverflow.com/questions/64403671

                      Community Discussions, Code Snippets contain sources that include Stack Exchange Network

                      Vulnerabilities

                      No vulnerabilities reported

                      Install devilbox

                      You can download it from GitHub.
                      PHP requires the Visual C runtime (CRT). The Microsoft Visual C++ Redistributable for Visual Studio 2019 is suitable for all these PHP versions, see visualstudio.microsoft.com. You MUST download the x86 CRT for PHP x86 builds and the x64 CRT for PHP x64 builds. The CRT installer supports the /quiet and /norestart command-line switches, so you can also script it.

                      Support

                      The Devilbox has a lot of features reaching from a simple single-user development environment that works out of the box up to a shared development infrastructure for a corporate network. In order to be aware about all that features, ensure to have skimmed over the documentation, so you know what can be done and how that might simplify your every-day life. If you ever run into any unforseen issues, feel free to join the chat or visit the forums and get community support quickly.

                      DOWNLOAD this Library from

                      Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
                      over 430 million Knowledge Items
                      Find more libraries
                      Reuse Solution Kits and Libraries Curated by Popular Use Cases
                      Explore Kits

                      Save this library and start creating your kit

                      Share this Page

                      share link
                      Consider Popular Continuous Deployment Libraries
                      Try Top Libraries by cytopia
                      Compare Continuous Deployment Libraries with Highest Support
                      Compare Continuous Deployment Libraries with Highest Quality
                      Compare Continuous Deployment Libraries with Highest Security
                      Compare Continuous Deployment Libraries with Permissive License
                      Compare Continuous Deployment Libraries with Highest Reuse
                      Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
                      over 430 million Knowledge Items
                      Find more libraries
                      Reuse Solution Kits and Libraries Curated by Popular Use Cases
                      Explore Kits

                      Save this library and start creating your kit

                      • © 2022 Open Weaver Inc.