diff options
Diffstat (limited to 'Services/php')
-rw-r--r-- | Services/php/Dockerfile | 10 | ||||
-rw-r--r-- | Services/php/README.md | 16 | ||||
-rw-r--r-- | Services/php/docker-compose.yml | 4 | ||||
-rw-r--r-- | Services/php/run.sh | 31 |
4 files changed, 16 insertions, 45 deletions
diff --git a/Services/php/Dockerfile b/Services/php/Dockerfile index 58653a8..4abb0f8 100644 --- a/Services/php/Dockerfile +++ b/Services/php/Dockerfile @@ -13,11 +13,11 @@ COPY php.ini /etc/php.d/sx.ini COPY run.sh /bin/ RUN chmod 775 /bin/run.sh && \ chmod ug+r $HTTPDCONF -COPY ./ $TMP_APP_PATH -RUN rm -f $TMP_APP_PATH/Dockerfile $TMP_APP_PATH/httpd.conf $TMP_APP_PATH/run.sh && \ - chown -R apache:apache $TMP_APP_PATH $APP_PATH $LOG_PATH && \ - chmod ug+r -R $TMP_APP_PATH $APP_PATH +COPY ./ $APP_PATH +RUN rm -f $APP_PATH/Dockerfile $APP_PATH/httpd.conf $APP_PATH/run.sh && \ + chown -R apache:apache $DATA_PATH $APP_PATH $LOG_PATH && \ + chmod ug+r -R $DATA_PATH $APP_PATH EXPOSE 80 443 -VOLUME [$APP_PATH,$LOG_PATH] +VOLUME [$DATA_PATH,$LOG_PATH] CMD ["/bin/run.sh"]
\ No newline at end of file diff --git a/Services/php/README.md b/Services/php/README.md index 4e350b3..947d102 100644 --- a/Services/php/README.md +++ b/Services/php/README.md @@ -30,8 +30,8 @@ service: CONTAINER_INSTANCE: "service-php" SERVER_NAME: "localhost" volumes: - - "/tmp/container/logs/php:/data/logs/apache" - - "/tmp/container/php:/data/apache" + - "/tmp/container/logs/php:/logs" + - "/tmp/container/php:/data" ``` ## Docker-compose in various situations @@ -90,8 +90,8 @@ CMD ["/bin/run.sh"] | CONTAINER_SERVICE | `string` | `no` | Define the type of service or application provided | SERVER_NAME | `string` | `no` | Server name for this container. If no name localhost will be assigned | HOSTNAME | `auto` | `auto` | Container unique id automatically assigned by docker daemon at startup -| LOG_PATH | `auto` | `auto` | default set to /data/logs/apache and used as a volume mountpoint -| APP_PATH | `auto` | `auto` | default set to /data/apache and used as a volume mountpoint +| LOG_PATH | `auto` | `auto` | default set to /logs and used as a volume mountpoint +| APP_PATH | `auto` | `auto` | default set to /data and used as a volume mountpoint ## Exposed port @@ -104,8 +104,8 @@ CMD ["/bin/run.sh"] | Container directory | Description | |----------------------|--------------------------------------------------------------------------| -| /data/logs/apache | log directory used to record container and php logs -| /data/apache | data directory served by php. If empty will be filled with app on startup. In other case use content from mountpoint or data volumes +| /logs | log directory used to record container and php logs +| /data | data directory served by php. If empty will be filled with app on startup. In other case use content from mountpoint or data volumes ## Testing the service @@ -126,8 +126,8 @@ You must have a working environment with the source code of this repository. Rea 1. Jump into the container directory with `cd Services/php` 2. Build the container using `docker build -t sv-php .` 3. Run this container - 1. Interactively with `docker run -p 80:80 -v /data/logs/apache -it sv-php`. If you add a second parameter (like `/bin/bash`) to will run this command instead of the default entrypoint. Usefull to interact with this container (ex: `/bin/bash`, `/bin/ps -a`, `/bin/df -h`,...) - 2. As a daemon with `docker run -p 80:80 -v /data/logs/apache -d sv-php` + 1. Interactively with `docker run -p 80:80 -v /logs -it sv-php`. If you add a second parameter (like `/bin/bash`) to will run this command instead of the default entrypoint. Usefull to interact with this container (ex: `/bin/bash`, `/bin/ps -a`, `/bin/df -h`,...) + 2. As a daemon with `docker run -p 80:80 -v /logs -d sv-php` ### Build & run a container using `docker-compose` diff --git a/Services/php/docker-compose.yml b/Services/php/docker-compose.yml index fe532d9..fa3f05f 100644 --- a/Services/php/docker-compose.yml +++ b/Services/php/docker-compose.yml @@ -14,5 +14,5 @@ server: CONTAINER_INSTANCE: "service-php" SERVER_NAME: "localhost" volumes: - - "/tmp/container/logs/php:/data/logs/apache" - - "/tmp/container/php:/data/apache"
\ No newline at end of file + - "/tmp/container/logs/php:/logs" + - "/tmp/container/php:/data"
\ No newline at end of file diff --git a/Services/php/run.sh b/Services/php/run.sh index 1e73c2f..0935290 100644 --- a/Services/php/run.sh +++ b/Services/php/run.sh @@ -2,10 +2,6 @@ source /bin/sx-lib.sh source /bin/sx-httpd.sh -if [[ "$0" == *"run.sh" && ! $1 = "" ]];then - eval "$@"; -fi - function display_container_php_header { echo "+=====================================================" echo "| Container : $HOSTNAME" @@ -33,31 +29,6 @@ function display_container_php_header { echo "+=====================================================" } -# Begin configuration before starting daemonized process -# and start generating host keys -function begin_php_config { - echo "=> BEGIN APACHE + PHP CONFIGURATION" - if [[ -d $TMP_APP_PATH ]]; then - if [ "$(ls -A $TMP_APP_PATH)" ]; then - echo "COPY application from $TMP_APP_PATH into $APP_PATH" - FILE_LIST=$(find $TMP_APP_PATH -maxdepth 1 -mindepth 1 -printf "%f\n") - for FILE in $FILE_LIST; do - echo -n "adding $APP_PATH/$FILE" - cp -r $TMP_APP_PATH/$FILE $APP_PATH/ - echo " DONE" - done - fi - fi -} - -# End configuration process just before starting daemon -function end_php_config { - echo "=> END APACHE + PHP CONFIGURATION" - env | grep _ >> /etc/environment -} - check_httpd_environment | tee -a $STARTUPLOG display_container_php_header | tee -a $STARTUPLOG -begin_php_config | tee -a $STARTUPLOG -end_php_config | tee -a $STARTUPLOG -start_daemon +start_service_httpd |