Skip to content

Commit

Permalink
Merge pull request #54 from devilbox/release-0.49b
Browse files Browse the repository at this point in the history
Release 0.49b (beta)
  • Loading branch information
cytopia authored Dec 25, 2022
2 parents 565e7c1 + afe9be1 commit 21b9658
Show file tree
Hide file tree
Showing 112 changed files with 7,080 additions and 2,232 deletions.
57 changes: 57 additions & 0 deletions .github/workflows/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---

# -------------------------------------------------------------------------------------------------
# Job Name
# -------------------------------------------------------------------------------------------------
name: docker-compose


# -------------------------------------------------------------------------------------------------
# When to run
# -------------------------------------------------------------------------------------------------
on:
pull_request:
paths:
- '.github/workflows/docker-compose.yml'
- 'Dockerfiles/**'
- 'examples/**/docker-compose.yml'
- 'examples/**/integration-test.sh'
- 'examples/integration-test.sh'


jobs:
docker-compose:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: 'docker-compose: main-vhost Static Files'
run: |
cd ./examples/default-vhost__static-files/
./integration-test.sh
- name: 'docker-compose: main-vhost PHP-FPM'
run: |
cd ./examples/default-vhost__php-fpm/
./integration-test.sh
- name: 'docker-compose: main-vhost PHP-FPM (SSL)'
run: |
cd ./examples/default-vhost__php-fpm__ssl/
./integration-test.sh
- name: 'docker-compose: main-vhost Reverse Proxy (NodeJS)'
run: |
cd ./examples/default-vhost__reverse-proxy__node/
./integration-test.sh
- name: 'docker-compose: mass-vhost PHP-FPM (SSL)'
run: |
cd ./examples/mass-vhost__php-fpm__ssl/
./integration-test.sh
- name: 'docker-compose: mass-vhost Reverse Proxy (SSL)'
run: |
cd ./examples/mass-vhost__reverse-proxy__ssl/
./integration-test.sh
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
Makefile.docker
Makefile.lint
devilbox-ca.crt
devilbox-ca.key
devilbox-ca.srl
47 changes: 31 additions & 16 deletions Dockerfiles/Dockerfile.alpine
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# vi: ft=dockerfile
FROM httpd:2.4-alpine
MAINTAINER "cytopia" <[email protected]>

Expand All @@ -11,9 +12,9 @@ LABEL \
###
### Build arguments
###
ARG VHOST_GEN_GIT_REF=1.0.3
ARG WATCHERD_GIT_REF=v1.0.2
ARG CERT_GEN_GIT_REF=0.7
ARG VHOST_GEN_GIT_REF=1.0.8
ARG WATCHERD_GIT_REF=v1.0.7
ARG CERT_GEN_GIT_REF=0.10

ENV BUILD_DEPS \
make \
Expand All @@ -29,16 +30,7 @@ ENV RUN_DEPS \
tzdata


###
### Runtime arguments
###
ENV MY_USER=www-data
ENV MY_GROUP=www-data
ENV HTTPD_START="httpd-foreground"
ENV HTTPD_RELOAD="/usr/local/apache2/bin/httpd -k stop"


###
##
### Install required packages
###
RUN set -eux \
Expand All @@ -61,7 +53,7 @@ RUN set -eux \
&& chmod +x /usr/bin/cert-gen \
\
# Install watcherd
&& wget --no-check-certificate -O /usr/bin/watcherd https://raw.githubusercontent.com/devilbox/watcherd/${WATCHERD_GIT_REF}/watcherd \
&& wget --no-check-certificate -O /usr/bin/watcherd https://raw.githubusercontent.com/devilbox/watcherd/${WATCHERD_GIT_REF}/bin/watcherd \
&& chmod +x /usr/bin/watcherd \
\
# Clean-up
Expand All @@ -81,6 +73,9 @@ RUN set -eux \
echo "LoadModule proxy_module modules/mod_proxy.so"; \
echo "LoadModule proxy_http_module modules/mod_proxy_http.so"; \
echo "LoadModule proxy_http2_module modules/mod_proxy_http2.so"; \
echo "LoadModule proxy_html_module modules/mod_proxy_html.so"; \
# [proxy_html] I18n support in mod_proxy_html requires mod_xml2enc.
echo "LoadModule xml2enc_module modules/mod_xml2enc.so"; \
echo "LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so"; \
echo "LoadModule rewrite_module modules/mod_rewrite.so"; \
\
Expand Down Expand Up @@ -119,6 +114,17 @@ RUN set -eux \
) >> /usr/local/apache2/conf/httpd.conf


###
### Runtime arguments
###
ENV MY_USER=www-data
ENV MY_GROUP=www-data
ENV HTTPD_START="httpd-foreground"
ENV HTTPD_RELOAD="/usr/local/apache2/bin/httpd -k stop"
ENV HTTPD_VERSION="httpd -V 2>&1 | head -1 | awk '{print \$3}'"
ENV VHOSTGEN_HTTPD_SERVER="apache24"


###
### Create directories
###
Expand All @@ -127,6 +133,7 @@ RUN set -eux \
&& mkdir -p /etc/httpd/conf.d \
&& mkdir -p /etc/httpd/vhost.d \
&& mkdir -p /var/www/default/htdocs \
&& mkdir -p /var/log/httpd \
&& mkdir -p /shared/httpd \
&& chmod 0775 /shared/httpd \
&& chown ${MY_USER}:${MY_GROUP} /shared/httpd
Expand All @@ -139,12 +146,20 @@ RUN set -eux \
&& ln -sf /usr/bin/python3 /usr/bin/python


###
### Set timezone
###
RUN set -eux \
&& if [ -f /etc/localtime ]; then rm /etc/localtime; fi \
&& ln -s /usr/share/zoneinfo/UTC /etc/localtime


###
### Copy files
###
COPY ./data/vhost-gen/main.yml /etc/vhost-gen/main.yml
COPY ./data/vhost-gen/mass.yml /etc/vhost-gen/mass.yml
COPY ./data/vhost-gen/templates-main /etc/vhost-gen/templates-main
COPY ./data/create-vhost.sh /usr/local/bin/create-vhost.sh

COPY ./data/docker-entrypoint.d /docker-entrypoint.d
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh

Expand Down
45 changes: 30 additions & 15 deletions Dockerfiles/Dockerfile.debian
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# vi: ft=dockerfile
FROM httpd:2.4
MAINTAINER "cytopia" <[email protected]>

Expand All @@ -11,9 +12,9 @@ LABEL \
###
### Build arguments
###
ARG VHOST_GEN_GIT_REF=1.0.3
ARG WATCHERD_GIT_REF=v1.0.2
ARG CERT_GEN_GIT_REF=0.7
ARG VHOST_GEN_GIT_REF=1.0.8
ARG WATCHERD_GIT_REF=v1.0.7
ARG CERT_GEN_GIT_REF=0.10

ENV BUILD_DEPS \
make \
Expand All @@ -25,15 +26,6 @@ ENV RUN_DEPS \
supervisor


###
### Runtime arguments
###
ENV MY_USER=www-data
ENV MY_GROUP=www-data
ENV HTTPD_START="httpd-foreground"
ENV HTTPD_RELOAD="/usr/local/apache2/bin/httpd -k stop"


###
### Install required packages
###
Expand All @@ -58,7 +50,7 @@ RUN set -eux \
&& chmod +x /usr/bin/cert-gen \
\
# Install watcherd
&& wget --no-check-certificate -O /usr/bin/watcherd https://raw.githubusercontent.com/devilbox/watcherd/${WATCHERD_GIT_REF}/watcherd \
&& wget --no-check-certificate -O /usr/bin/watcherd https://raw.githubusercontent.com/devilbox/watcherd/${WATCHERD_GIT_REF}/bin/watcherd \
&& chmod +x /usr/bin/watcherd \
\
# Clean-up
Expand All @@ -79,6 +71,9 @@ RUN set -eux \
echo "LoadModule proxy_module modules/mod_proxy.so"; \
echo "LoadModule proxy_http_module modules/mod_proxy_http.so"; \
echo "LoadModule proxy_http2_module modules/mod_proxy_http2.so"; \
echo "LoadModule proxy_html_module modules/mod_proxy_html.so"; \
# [proxy_html] I18n support in mod_proxy_html requires mod_xml2enc.
echo "LoadModule xml2enc_module modules/mod_xml2enc.so"; \
echo "LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so"; \
echo "LoadModule rewrite_module modules/mod_rewrite.so"; \
\
Expand Down Expand Up @@ -117,6 +112,17 @@ RUN set -eux \
) >> /usr/local/apache2/conf/httpd.conf


###
### Runtime arguments
###
ENV MY_USER=www-data
ENV MY_GROUP=www-data
ENV HTTPD_START="httpd-foreground"
ENV HTTPD_RELOAD="/usr/local/apache2/bin/httpd -k stop"
ENV HTTPD_VERSION="httpd -V 2>&1 | head -1 | awk '{print \$3}'"
ENV VHOSTGEN_HTTPD_SERVER="apache24"


###
### Create directories
###
Expand All @@ -125,6 +131,7 @@ RUN set -eux \
&& mkdir -p /etc/httpd/conf.d \
&& mkdir -p /etc/httpd/vhost.d \
&& mkdir -p /var/www/default/htdocs \
&& mkdir -p /var/log/httpd \
&& mkdir -p /shared/httpd \
&& chmod 0775 /shared/httpd \
&& chown ${MY_USER}:${MY_GROUP} /shared/httpd
Expand All @@ -137,12 +144,20 @@ RUN set -eux \
&& ln -sf /usr/bin/python3 /usr/bin/python


###
### Set timezone
###
RUN set -eux \
&& if [ -f /etc/localtime ]; then rm /etc/localtime; fi \
&& ln -s /usr/share/zoneinfo/UTC /etc/localtime


###
### Copy files
###
COPY ./data/vhost-gen/main.yml /etc/vhost-gen/main.yml
COPY ./data/vhost-gen/mass.yml /etc/vhost-gen/mass.yml
COPY ./data/vhost-gen/templates-main /etc/vhost-gen/templates-main
COPY ./data/create-vhost.sh /usr/local/bin/create-vhost.sh

COPY ./data/docker-entrypoint.d /docker-entrypoint.d
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh

Expand Down
2 changes: 1 addition & 1 deletion Dockerfiles/Dockerfile.latest
Loading

0 comments on commit 21b9658

Please sign in to comment.