Merge branch 'master' into master

This commit is contained in:
Shao Yu-Lung (Allen) 2022-11-08 14:28:49 +08:00 committed by GitHub
commit bbbe087402
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 163 additions and 82 deletions

View File

@ -43,8 +43,8 @@ PHP_VERSION=7.4
### Phalcon Version ########################################### ### Phalcon Version ###########################################
# Select a Phalcon version of the Workspace and PHP-FPM containers (Does not apply to HHVM). Accepted values: 3.4.0+ # Select a Phalcon version of the Workspace and PHP-FPM containers (Does not apply to HHVM). Accepted values: 5.0.0+
PHALCON_VERSION=4.0.5 PHALCON_VERSION=5.0.0
### PHP Interpreter ####################################### ### PHP Interpreter #######################################
@ -205,6 +205,8 @@ WORKSPACE_INSTALL_TRADER=false
WORKSPACE_PROTOC_VERSION=latest WORKSPACE_PROTOC_VERSION=latest
WORKSPACE_INSTALL_MEMCACHED=true WORKSPACE_INSTALL_MEMCACHED=true
WORKSPACE_INSTALL_EVENT=false WORKSPACE_INSTALL_EVENT=false
WORKSPACE_INSTALL_DNSUTILS=true
WORKSPACE_XDEBUG_PORT=9003
WORKSPACE_VITE_PORT=5173 WORKSPACE_VITE_PORT=5173
### PHP_FPM ############################################### ### PHP_FPM ###############################################
@ -279,6 +281,7 @@ PHP_FPM_INSTALL_DOCKER_CLIENT=false
PHP_FPM_DEFAULT_LOCALE=POSIX PHP_FPM_DEFAULT_LOCALE=POSIX
PHP_FPM_XDEBUG_PORT=9003 PHP_FPM_XDEBUG_PORT=9003
PHP_FPM_INSTALL_EVENT=false PHP_FPM_INSTALL_EVENT=false
PHP_FPM_INSTALL_DNSUTILS=true
PHP_FPM_PUID=1000 PHP_FPM_PUID=1000
PHP_FPM_PGID=1000 PHP_FPM_PGID=1000
@ -379,6 +382,7 @@ APACHE_PHP_UPSTREAM_TIMEOUT=60
APACHE_DOCUMENT_ROOT=/var/www/ APACHE_DOCUMENT_ROOT=/var/www/
APACHE_SSL_PATH=./apache2/ssl/ APACHE_SSL_PATH=./apache2/ssl/
APACHE_INSTALL_HTTP2=false APACHE_INSTALL_HTTP2=false
APACHE_FOR_MAC_M1=false
### MYSQL ################################################# ### MYSQL #################################################
@ -392,8 +396,8 @@ MYSQL_ENTRYPOINT_INITDB=./mysql/docker-entrypoint-initdb.d
### CLICKHOUSE ################################################# ### CLICKHOUSE #################################################
CLICKHOUSE_VERSION=20.9.4.76 CLICKHOUSE_VERSION=22.2.2.1
CLICKHOUSE_GOSU_VERSION=1.10 CLICKHOUSE_GOSU_VERSION=1.14
CLICKHOUSE_CUSTOM_CONFIG=./clickhouse/config.xml CLICKHOUSE_CUSTOM_CONFIG=./clickhouse/config.xml
CLICKHOUSE_USERS_CUSTOM_CONFIG=./clickhouse/users.xml CLICKHOUSE_USERS_CUSTOM_CONFIG=./clickhouse/users.xml
CLICKHOUSE_USER=default CLICKHOUSE_USER=default
@ -1051,3 +1055,7 @@ NATS_ROUTE_PORT=8222
### SOKETI ################################################## ### SOKETI ##################################################
SOKETI_PORT=6001 SOKETI_PORT=6001
SOKETI_METRICS_SERVER_PORT=9601 SOKETI_METRICS_SERVER_PORT=9601
### ONEDEV ##################################################
ONEDEV_HTTP_PORT=6610
ONEDEV_SSH_PORT=6611

View File

@ -2253,6 +2253,31 @@ For configuration information, visit the [bash-git-prompt repository](https://gi
<a name="Install-Oh-My-Zsh"></a> <a name="Install-Oh-My-Zsh"></a>
## Install Oh My ZSH ## Install Oh My ZSH
<br>
<a name="Install-Dnsutils"></a>
## Install Dnsutils
1 - First install `dnsutils` in the Workspace and the PHP-FPM Containers:
<br>
a) open the `.env` file
<br>
b) search for the `WORKSPACE_INSTALL_DNSUTILS` argument under the Workspace Container
<br>
c) set it to `true`
<br>
d) search for the `PHP_FPM_INSTALL_DNSUTILS` argument under the PHP-FPM Container
<br>
e) set it to `true`
<br>
2 - Re-build the containers `docker-compose build workspace php-fpm`
> With the Laravel autocomplete plugin. > With the Laravel autocomplete plugin.
[Zsh](https://en.wikipedia.org/wiki/Z_shell) is an extended Bourne shell with many improvements, including some features of Bash, ksh, and tcsh. [Zsh](https://en.wikipedia.org/wiki/Z_shell) is an extended Bourne shell with many improvements, including some features of Bash, ksh, and tcsh.

View File

@ -127,3 +127,21 @@ WORKSPACE_INSTALL_LIBPNG=true
docker-compose build workspace docker-compose build workspace
``` ```
## Apache2 container won't start on mac m1
To fix the problem you can follow those steps
1 - Open the `.env`.
2 - Search for `APACHE_FOR_MAC_M1` or add the key, if missing.
3 - Set the value to true:
```dotenv
APACHE_FOR_MAC_M1=true
```
4 - Finally rebuild the workspace image
```bash
docker-compose build apache2
```

View File

@ -180,6 +180,7 @@ That's it! enjoy :)
- `SOAP` - `SOAP`
- `Drush` - `Drush`
- `Wordpress CLI` - `Wordpress CLI`
- `dnsutils`
- Apache ZooKeeper *(Centralized service for distributed systems to a hierarchical key-value store)* - Apache ZooKeeper *(Centralized service for distributed systems to a hierarchical key-value store)*
- Kibana *(Visualize your Elasticsearch data and navigate the Elastic Stack)* - Kibana *(Visualize your Elasticsearch data and navigate the Elastic Stack)*
- Dejavu *(Edit your Elasticsearch data)* - Dejavu *(Edit your Elasticsearch data)*

View File

@ -30,3 +30,12 @@ ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
CMD ["/bin/bash", "/opt/startup.sh"] CMD ["/bin/bash", "/opt/startup.sh"]
EXPOSE 80 443 EXPOSE 80 443
ARG APACHE_FOR_MAC_M1=false
RUN if [ ${APACHE_FOR_MAC_M1} = true ]; then \
# Change application source from deb.debian.org to aliyun source
wget -O "/usr/local/bin/go-replace" "https://github.com/webdevops/goreplace/releases/download/1.1.2/gr-arm64-linux" && \
chmod +x "/usr/local/bin/go-replace" && \
"/usr/local/bin/go-replace" --version \
;fi

View File

@ -1,4 +1,4 @@
FROM caddy/caddy:latest FROM caddy:latest
COPY ./caddy/Caddyfile /etc/caddy/Caddyfile COPY ./caddy/Caddyfile /etc/caddy/Caddyfile

View File

@ -1,7 +1,7 @@
FROM ubuntu:20.04 FROM ubuntu:20.04
ARG CLICKHOUSE_VERSION=20.9.4.76 ARG CLICKHOUSE_VERSION=22.2.2.1
ARG CLICKHOUSE_GOSU_VERSION=1.10 ARG CLICKHOUSE_GOSU_VERSION=1.14
RUN apt-get update \ RUN apt-get update \
&& apt-get install --yes --no-install-recommends \ && apt-get install --yes --no-install-recommends \

View File

@ -74,6 +74,7 @@ services:
- INSTALL_GMP=${WORKSPACE_INSTALL_GMP} - INSTALL_GMP=${WORKSPACE_INSTALL_GMP}
- INSTALL_GNUPG=${WORKSPACE_INSTALL_GNUPG} - INSTALL_GNUPG=${WORKSPACE_INSTALL_GNUPG}
- INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG} - INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
- XDEBUG_PORT=${WORKSPACE_XDEBUG_PORT}
- INSTALL_PCOV=${WORKSPACE_INSTALL_PCOV} - INSTALL_PCOV=${WORKSPACE_INSTALL_PCOV}
- INSTALL_PHPDBG=${WORKSPACE_INSTALL_PHPDBG} - INSTALL_PHPDBG=${WORKSPACE_INSTALL_PHPDBG}
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE} - INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
@ -174,6 +175,7 @@ services:
- INSTALL_DOCKER_CLIENT=${WORKSPACE_INSTALL_DOCKER_CLIENT} - INSTALL_DOCKER_CLIENT=${WORKSPACE_INSTALL_DOCKER_CLIENT}
- INSTALL_MEMCACHED=${WORKSPACE_INSTALL_MEMCACHED} - INSTALL_MEMCACHED=${WORKSPACE_INSTALL_MEMCACHED}
- INSTALL_EVENT=${WORKSPACE_INSTALL_EVENT} - INSTALL_EVENT=${WORKSPACE_INSTALL_EVENT}
- INSTALL_DNSUTILS=${WORKSPACE_INSTALL_DNSUTILS}
- http_proxy - http_proxy
- https_proxy - https_proxy
- no_proxy - no_proxy
@ -219,6 +221,7 @@ services:
- INSTALL_GMP=${PHP_FPM_INSTALL_GMP} - INSTALL_GMP=${PHP_FPM_INSTALL_GMP}
- INSTALL_GNUPG=${PHP_FPM_INSTALL_GNUPG} - INSTALL_GNUPG=${PHP_FPM_INSTALL_GNUPG}
- INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG} - INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
- XDEBUG_PORT=${PHP_FPM_XDEBUG_PORT}
- INSTALL_PCOV=${PHP_FPM_INSTALL_PCOV} - INSTALL_PCOV=${PHP_FPM_INSTALL_PCOV}
- INSTALL_PHPDBG=${PHP_FPM_INSTALL_PHPDBG} - INSTALL_PHPDBG=${PHP_FPM_INSTALL_PHPDBG}
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE} - INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
@ -288,6 +291,7 @@ services:
- PHP_FPM_NEW_RELIC_KEY=${PHP_FPM_NEW_RELIC_KEY} - PHP_FPM_NEW_RELIC_KEY=${PHP_FPM_NEW_RELIC_KEY}
- PHP_FPM_NEW_RELIC_APP_NAME=${PHP_FPM_NEW_RELIC_APP_NAME} - PHP_FPM_NEW_RELIC_APP_NAME=${PHP_FPM_NEW_RELIC_APP_NAME}
- INSTALL_DOCKER_CLIENT=${PHP_FPM_INSTALL_DOCKER_CLIENT} - INSTALL_DOCKER_CLIENT=${PHP_FPM_INSTALL_DOCKER_CLIENT}
- INSTALL_DNSUTILS=${PHP_FPM_INSTALL_DNSUTILS}
- http_proxy - http_proxy
- https_proxy - https_proxy
- no_proxy - no_proxy
@ -295,8 +299,6 @@ services:
- ./php-fpm/php${PHP_VERSION}.ini:/usr/local/etc/php/php.ini - ./php-fpm/php${PHP_VERSION}.ini:/usr/local/etc/php/php.ini
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG} - ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
- docker-in-docker:/certs/client - docker-in-docker:/certs/client
ports:
- "${PHP_FPM_XDEBUG_PORT}:9003"
expose: expose:
- "9000" - "9000"
extra_hosts: extra_hosts:
@ -486,6 +488,7 @@ services:
- PHP_UPSTREAM_TIMEOUT=${APACHE_PHP_UPSTREAM_TIMEOUT} - PHP_UPSTREAM_TIMEOUT=${APACHE_PHP_UPSTREAM_TIMEOUT}
- DOCUMENT_ROOT=${APACHE_DOCUMENT_ROOT} - DOCUMENT_ROOT=${APACHE_DOCUMENT_ROOT}
- APACHE_INSTALL_HTTP2=${APACHE_INSTALL_HTTP2} - APACHE_INSTALL_HTTP2=${APACHE_INSTALL_HTTP2}
- APACHE_FOR_MAC_M1=${APACHE_FOR_MAC_M1}
volumes: volumes:
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG} - ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
- ${APACHE_HOST_LOG_PATH}:/var/log/apache2 - ${APACHE_HOST_LOG_PATH}:/var/log/apache2
@ -2076,3 +2079,17 @@ services:
- ${TARANTOOL_ADMIN_PORT}:80 - ${TARANTOOL_ADMIN_PORT}:80
networks: networks:
- backend - backend
### onedev ####################################################
onedev:
image: 1dev/server
ports:
- "${ONEDEV_HTTP_PORT}:6610"
- "${ONEDEV_SSH_PORT}:6611"
volumes:
- ${DATA_PATH_HOST}/onedev:/opt/onedev
- /var/run/docker.sock:/var/run/docker.sock
networks:
- frontend
- backend
restart: always

View File

@ -1,5 +1,5 @@
FROM djfarrelly/maildev FROM maildev/maildev
LABEL maintainer="Maxime Hélias <maximehelias16@gmail.com>" LABEL maintainer="Dan Farrelly"
EXPOSE 80 25 EXPOSE 80 25

View File

@ -58,7 +58,7 @@ ARG RESTY_CONFIG_OPTIONS_MORE="\
--with-http_iconv_module \ --with-http_iconv_module \
--add-module=/tmp/nginx-ct-master \ --add-module=/tmp/nginx-ct-master \
--add-module=/tmp/nginx-dav-ext-module-master \ --add-module=/tmp/nginx-dav-ext-module-master \
--add-module=/tmp/ngx_brotli \ --add-module=/tmp/ngx_brotli-master \
--add-module=/tmp/ngx_cache_purge-master \ --add-module=/tmp/ngx_cache_purge-master \
--add-module=/tmp/ngx_http_substitutions_filter_module-master \ --add-module=/tmp/ngx_http_substitutions_filter_module-master \
" "
@ -166,7 +166,7 @@ RUN apk add --no-cache --virtual .build-deps \
&& tar xzf nginx-ct.tar.gz \ && tar xzf nginx-ct.tar.gz \
&& curl -fSL https://github.com/arut/nginx-dav-ext-module/archive/master.tar.gz -o nginx-dav-ext-module.tar.gz \ && curl -fSL https://github.com/arut/nginx-dav-ext-module/archive/master.tar.gz -o nginx-dav-ext-module.tar.gz \
&& tar xzf nginx-dav-ext-module.tar.gz \ && tar xzf nginx-dav-ext-module.tar.gz \
&& curl -fSL https://www.downsoft.cn/software/linux/nginx/ngx_brotli.tar.gz -o ngx_brotli.tar.gz \ && curl -fSL https://github.com/google/ngx_brotli/archive/master.tar.gz -o ngx_brotli.tar.gz \
&& tar xzf ngx_brotli.tar.gz \ && tar xzf ngx_brotli.tar.gz \
&& curl -fSL https://github.com/yaoweibin/ngx_http_substitutions_filter_module/archive/master.tar.gz -o ngx_http_substitutions_filter_module.tar.gz \ && curl -fSL https://github.com/yaoweibin/ngx_http_substitutions_filter_module/archive/master.tar.gz -o ngx_http_substitutions_filter_module.tar.gz \
&& tar xzf ngx_http_substitutions_filter_module.tar.gz \ && tar xzf ngx_http_substitutions_filter_module.tar.gz \

View File

@ -212,12 +212,13 @@ RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \
########################################################################### ###########################################################################
ARG INSTALL_XDEBUG=false ARG INSTALL_XDEBUG=false
ARG XDEBUG_PORT=9003
RUN if [ ${INSTALL_XDEBUG} = true ]; then \ RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Install the xdebug extension # Install the xdebug extension
# https://xdebug.org/docs/compat # https://xdebug.org/docs/compat
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "3" ] ;} ;}; then \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "3" ] ;} ;}; then \
pecl install xdebug-3.1.2; \ pecl install xdebug-3.1.4; \
else \ else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install xdebug-2.5.5; \ pecl install xdebug-2.5.5; \
@ -235,10 +236,10 @@ RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Copy xdebug configuration for remote debugging # Copy xdebug configuration for remote debugging
COPY ./xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini COPY ./xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
RUN if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \ RUN if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "3" ] ;} ;}; then \
sed -i "s/xdebug.remote_host=/xdebug.client_host=/" /usr/local/etc/php/conf.d/xdebug.ini && \ sed -i "s/xdebug.remote_host=/xdebug.client_host=/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_connect_back=0/xdebug.discover_client_host=false/" /usr/local/etc/php/conf.d/xdebug.ini && \ sed -i "s/xdebug.remote_connect_back=0/xdebug.discover_client_host=false/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_port=9000/xdebug.client_port=9003/" /usr/local/etc/php/conf.d/xdebug.ini && \ sed -i "s/xdebug.remote_port=9000/xdebug.client_port=${XDEBUG_PORT}/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.profiler_enable=0/; xdebug.profiler_enable=0/" /usr/local/etc/php/conf.d/xdebug.ini && \ sed -i "s/xdebug.profiler_enable=0/; xdebug.profiler_enable=0/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.profiler_output_dir=/xdebug.output_dir=/" /usr/local/etc/php/conf.d/xdebug.ini && \ sed -i "s/xdebug.profiler_output_dir=/xdebug.output_dir=/" /usr/local/etc/php/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_mode=req/; xdebug.remote_mode=req/" /usr/local/etc/php/conf.d/xdebug.ini && \ sed -i "s/xdebug.remote_mode=req/; xdebug.remote_mode=req/" /usr/local/etc/php/conf.d/xdebug.ini && \
@ -259,12 +260,10 @@ USER root
ARG INSTALL_PCOV=false ARG INSTALL_PCOV=false
RUN if [ ${INSTALL_PCOV} = true ]; then \ RUN if [ ${INSTALL_PCOV} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") != "0" ]; }; then \
if [ $(php -r "echo PHP_MINOR_VERSION;") != "0" ]; then \
pecl install pcov && \ pecl install pcov && \
docker-php-ext-enable pcov \ docker-php-ext-enable pcov \
;fi \ ;fi \
;fi \
;fi ;fi
########################################################################### ###########################################################################
@ -850,24 +849,12 @@ ARG INSTALL_PHALCON=false
ARG LARADOCK_PHALCON_VERSION ARG LARADOCK_PHALCON_VERSION
ENV LARADOCK_PHALCON_VERSION ${LARADOCK_PHALCON_VERSION} ENV LARADOCK_PHALCON_VERSION ${LARADOCK_PHALCON_VERSION}
# Copy phalcon configration
COPY ./phalcon.ini /usr/local/etc/php/conf.d/phalcon.ini.disable
RUN if [ $INSTALL_PHALCON = true ]; then \ RUN if [ $INSTALL_PHALCON = true ]; then \
apt-get install -yqq unzip libpcre3-dev gcc make re2c git automake autoconf\ apt-get update -yqq \
&& git clone https://github.com/jbboehr/php-psr.git \ && pecl channel-update pecl.php.net \
&& cd php-psr \ && apt-get install -yqq libpcre3-dev; \
&& phpize \ pecl install phalcon-${LARADOCK_PHALCON_VERSION}; \
&& ./configure \ docker-php-ext-enable phalcon \
&& make \
&& make test \
&& make install \
&& curl -L -o /tmp/cphalcon.zip https://github.com/phalcon/cphalcon/archive/v${LARADOCK_PHALCON_VERSION}.zip \
&& unzip -d /tmp/ /tmp/cphalcon.zip \
&& cd /tmp/cphalcon-${LARADOCK_PHALCON_VERSION}/build \
&& ./install \
&& mv /usr/local/etc/php/conf.d/phalcon.ini.disable /usr/local/etc/php/conf.d/phalcon.ini \
&& rm -rf /tmp/cphalcon* \
;fi ;fi
########################################################################### ###########################################################################
@ -1270,6 +1257,18 @@ RUN set -eux; \
php -m | grep -q 'event' \ php -m | grep -q 'event' \
;fi ;fi
###########################################################################
# DNS utilities:
###########################################################################
USER root
ARG INSTALL_DNSUTILS=false
RUN if [ ${INSTALL_DNSUTILS} = true ]; then \
apt-get update && apt-get install -y dnsutils \
;fi
########################################################################### ###########################################################################
# Check PHP version: # Check PHP version:
########################################################################### ###########################################################################

View File

@ -310,23 +310,16 @@ RUN if [ ${INSTALL_CASSANDRA} = true ]; then \
# Install Phalcon ext # Install Phalcon ext
ARG INSTALL_PHALCON=false ARG INSTALL_PHALCON=false
ARG PHALCON_VERSION ARG LARADOCK_PHALCON_VERSION
ENV PHALCON_VERSION ${PHALCON_VERSION} ENV LARADOCK_PHALCON_VERSION ${LARADOCK_PHALCON_VERSION}
RUN if [ $INSTALL_PHALCON = true ]; then \ RUN if [ $INSTALL_PHALCON = true ]; then \
apk --update add unzip gcc make re2c bash\ apt-get update -yqq \
&& git clone https://github.com/jbboehr/php-psr.git \ && pecl channel-update pecl.php.net \
&& cd php-psr \ && apt-get install -yqq libpcre3-dev; \
&& phpize \ pecl install phalcon-${LARADOCK_PHALCON_VERSION}; \
&& ./configure \ docker-php-ext-enable phalcon; \
&& make \ php -m | grep -q 'phalcon' \
&& make test \
&& make install \
&& curl -L -o /tmp/cphalcon.zip https://github.com/phalcon/cphalcon/archive/v${PHALCON_VERSION}.zip \
&& unzip -d /tmp/ /tmp/cphalcon.zip \
&& cd /tmp/cphalcon-${PHALCON_VERSION}/build \
&& ./install \
&& rm -rf /tmp/cphalcon* \
;fi ;fi
ARG INSTALL_GHOSTSCRIPT=false ARG INSTALL_GHOSTSCRIPT=false

View File

@ -327,13 +327,14 @@ RUN set -eux; \
USER root USER root
ARG INSTALL_XDEBUG=false ARG INSTALL_XDEBUG=false
ARG XDEBUG_PORT=9003
RUN if [ ${INSTALL_XDEBUG} = true ]; then \ RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Install the xdebug extension # Install the xdebug extension
# https://xdebug.org/docs/compat # https://xdebug.org/docs/compat
apt-get install -yqq pkg-config php-xml php${LARADOCK_PHP_VERSION}-xml && \ apt-get install -yqq pkg-config php-xml php${LARADOCK_PHP_VERSION}-xml && \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "3" ] ;} ;}; then \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "3" ] ;} ;}; then \
pecl install xdebug-3.1.2; \ pecl install xdebug-3.1.4; \
else \ else \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install xdebug-2.5.5; \ pecl install xdebug-2.5.5; \
@ -351,10 +352,10 @@ RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# ADD for REMOTE debugging # ADD for REMOTE debugging
COPY ./xdebug.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini COPY ./xdebug.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini
RUN if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \ RUN if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && { [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ] || [ $(php -r "echo PHP_MINOR_VERSION;") = "3" ] ;} ;}; then \
sed -i "s/xdebug.remote_host=/xdebug.client_host=/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \ sed -i "s/xdebug.remote_host=/xdebug.client_host=/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_connect_back=0/xdebug.discover_client_host=false/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \ sed -i "s/xdebug.remote_connect_back=0/xdebug.discover_client_host=false/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_port=9000/xdebug.client_port=9003/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \ sed -i "s/xdebug.remote_port=9000/xdebug.client_port=${XDEBUG_PORT}/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.profiler_enable=0/; xdebug.profiler_enable=0/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \ sed -i "s/xdebug.profiler_enable=0/; xdebug.profiler_enable=0/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.profiler_output_dir=/xdebug.output_dir=/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \ sed -i "s/xdebug.profiler_output_dir=/xdebug.output_dir=/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
sed -i "s/xdebug.remote_mode=req/; xdebug.remote_mode=req/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \ sed -i "s/xdebug.remote_mode=req/; xdebug.remote_mode=req/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \
@ -375,13 +376,11 @@ USER root
ARG INSTALL_PCOV=false ARG INSTALL_PCOV=false
RUN if [ ${INSTALL_PCOV} = true ]; then \ RUN if [ ${INSTALL_PCOV} = true ]; then \
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ] || { [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") != "0" ]; }; then \
if [ $(php -r "echo PHP_MINOR_VERSION;") != "0" ]; then \
pecl install pcov && \ pecl install pcov && \
echo "extension=pcov.so" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini && \ echo "extension=pcov.so" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini && \
echo "pcov.enabled" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini \ echo "pcov.enabled" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini \
;fi \ ;fi \
;fi \
;fi ;fi
@ -1322,22 +1321,13 @@ ARG LARADOCK_PHALCON_VERSION
ENV LARADOCK_PHALCON_VERSION ${LARADOCK_PHALCON_VERSION} ENV LARADOCK_PHALCON_VERSION ${LARADOCK_PHALCON_VERSION}
RUN if [ $INSTALL_PHALCON = true ]; then \ RUN if [ $INSTALL_PHALCON = true ]; then \
apt-get update && apt-get install -yqq unzip libpcre3-dev gcc make re2c git automake autoconf\ apt-get update -yqq \
&& git clone https://github.com/jbboehr/php-psr.git \ && pecl channel-update pecl.php.net \
&& cd php-psr \ && apt-get install -yqq libpcre3-dev; \
&& phpize \ pecl install phalcon-${LARADOCK_PHALCON_VERSION}; \
&& ./configure \ echo "extension=phalcon.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini; \
&& make \ ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/50-phalcon.ini; \
&& make test \ php -m | grep -q 'phalcon' \
&& make install \
&& curl -L -o /tmp/cphalcon.zip https://github.com/phalcon/cphalcon/archive/v${LARADOCK_PHALCON_VERSION}.zip \
&& unzip -d /tmp/ /tmp/cphalcon.zip \
&& cd /tmp/cphalcon-${LARADOCK_PHALCON_VERSION}/build \
&& ./install \
&& echo "extension=psr.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini \
&& echo "extension=phalcon.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini \
&& ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/phalcon.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-phalcon.ini \
&& rm -rf /tmp/cphalcon* \
;fi ;fi
########################################################################### ###########################################################################
@ -1773,7 +1763,17 @@ RUN set -eux; \
php -m | grep -q 'event' \ php -m | grep -q 'event' \
;fi ;fi
###########################################################################
# DNS utilities:
###########################################################################
USER root
ARG INSTALL_DNSUTILS=false
RUN if [ ${INSTALL_DNSUTILS} = true ]; then \
apt-get update && apt-get install -y dnsutils \
;fi
# #
#-------------------------------------------------------------------------- #--------------------------------------------------------------------------

View File

@ -148,3 +148,14 @@ function fs() {
du $arg .[^.]* ./*; du $arg .[^.]* ./*;
fi; fi;
} }
# Add artisan autocomplete
function _artisan()
{
COMP_WORDBREAKS=${COMP_WORDBREAKS//:}
COMMANDS=`php artisan --raw --no-ansi list | sed "s/[[:space:]].*//g"`
COMPREPLY=(`compgen -W "$COMMANDS" -- "${COMP_WORDS[COMP_CWORD]}"`)
return 0
}
complete -F _artisan art
complete -F _artisan artisan