Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 0.49b (beta) #57

Merged
merged 20 commits into from
Dec 25, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
42 changes: 27 additions & 15 deletions Dockerfiles/Dockerfile.alpine
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# vi: ft=dockerfile
FROM nginx:mainline-alpine
MAINTAINER "cytopia" <cytopia@everythingcli.org>

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 @@ -28,15 +29,6 @@ ENV RUN_DEPS \
supervisor


###
### Runtime arguments
###
ENV MY_USER=nginx
ENV MY_GROUP=nginx
ENV HTTPD_START="/usr/sbin/nginx"
ENV HTTPD_RELOAD="nginx -s stop"


###
### Install required packages
###
Expand All @@ -60,14 +52,25 @@ 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
&& apk del \
${BUILD_DEPS}


###
### Runtime arguments
###
ENV MY_USER=nginx
ENV MY_GROUP=nginx
ENV HTTPD_START="/usr/sbin/nginx"
ENV HTTPD_RELOAD="nginx -s stop"
ENV HTTPD_VERSION="nginx -V 2>&1 | head -1 | awk '{print \$3}'"
ENV VHOSTGEN_HTTPD_SERVER="nginx"


###
### Create directories
###
Expand All @@ -78,6 +81,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 @@ -90,14 +94,22 @@ 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/nginx/nginx.conf /etc/nginx/nginx.conf
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
42 changes: 27 additions & 15 deletions Dockerfiles/Dockerfile.debian
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# vi: ft=dockerfile
FROM nginx:mainline
MAINTAINER "cytopia" <cytopia@everythingcli.org>

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=nginx
ENV MY_GROUP=nginx
ENV HTTPD_START="/usr/sbin/nginx"
ENV HTTPD_RELOAD="nginx -s 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 @@ -67,6 +59,17 @@ RUN set -eux \
&& rm -rf /var/lib/apt/lists/*


###
### Runtime arguments
###
ENV MY_USER=nginx
ENV MY_GROUP=nginx
ENV HTTPD_START="/usr/sbin/nginx"
ENV HTTPD_RELOAD="nginx -s stop"
ENV HTTPD_VERSION="nginx -V 2>&1 | head -1 | awk '{print \$3}'"
ENV VHOSTGEN_HTTPD_SERVER="nginx"


###
### Create directories
###
Expand All @@ -77,6 +80,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 @@ -89,14 +93,22 @@ 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/nginx/nginx.conf /etc/nginx/nginx.conf
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