diff --git a/.github/workflows/build-and-push-dev-images.yml b/.github/workflows/build-and-push-dev-images.yml index 18a177f379..4b3de90ae1 100644 --- a/.github/workflows/build-and-push-dev-images.yml +++ b/.github/workflows/build-and-push-dev-images.yml @@ -28,13 +28,13 @@ on: required: false lang: description: List of languages to build - default: 'gcc-toolset, golang, nginx, nodejs, php, python, redis, ruby, haproxy, kubectl, helm, ocne-tools' + default: 'gcc-toolset, golang, nginx, nodejs, php, python, redis, ruby, haproxy, kubectl, helm, ocne-tools, httpd' required: false # Default values for the builds triggered by the push event env: ol: 'oraclelinux7, oraclelinux8, oraclelinux9' - lang: 'gcc-toolset, golang, nodejs, nginx, php, python, redis, ruby, haproxy, kubectl, helm, ocne-tools' + lang: 'gcc-toolset, golang, nodejs, nginx, php, python, redis, ruby, haproxy, kubectl, helm, ocne-tools, httpd' jobs: prepare: diff --git a/OracleLinuxDevelopers/oraclelinux9/httpd/2.4/Dockerfile b/OracleLinuxDevelopers/oraclelinux9/httpd/2.4/Dockerfile new file mode 100644 index 0000000000..0eb380a3c6 --- /dev/null +++ b/OracleLinuxDevelopers/oraclelinux9/httpd/2.4/Dockerfile @@ -0,0 +1,18 @@ +FROM ghcr.io/oracle/oraclelinux:9 + +RUN dnf install -y httpd mod_ssl && \ + rm -rf /var/cache/dnf + +RUN sed -i \ + -e 's/^SSLCertificateFile .*/SSLCertificateFile \/certs\/fullchain.pem/g' \ + -e 's/^SSLCertificateKeyFile .*/SSLCertificateKeyFile \/certs\/privkey.pem/g' \ + /etc/httpd/conf.d/ssl.conf + +RUN mkdir -p /certs + +ENV CERTIFICATE_DIR /certs +ENV KEY_DIR /certs + +COPY ./entrypoint.sh /opt/entrypoint.sh + +CMD ["/opt/entrypoint.sh"] \ No newline at end of file diff --git a/OracleLinuxDevelopers/oraclelinux9/httpd/2.4/entrypoint.sh b/OracleLinuxDevelopers/oraclelinux9/httpd/2.4/entrypoint.sh new file mode 100755 index 0000000000..4a730c96dc --- /dev/null +++ b/OracleLinuxDevelopers/oraclelinux9/httpd/2.4/entrypoint.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +set -eu pipefail + +SERVER_CERT="$CERTIFICATE_DIR/fullchain.pem" +SERVER_KEY="$KEY_DIR/privkey.pem" + +if [ ! -f "$SERVER_KEY" ]; then + echo "Generating certificate private key for SSL support" 1>&2 + openssl genpkey -algorithm RSA -out "$SERVER_KEY" 1>&2 +fi + +if [ ! -f "$SERVER_CERT" ]; then + echo "Generating self-signed certificate for SSL support" 1>&2 + openssl req -x509 -new -nodes -key "$SERVER_KEY" -sha256 -days 3650 -out "$SERVER_CERT" -subj "/C=US/ST=California/L=San Francisco/O=Test Company/CN=localhost" 1>&2 +fi + +httpd -DFOREGROUND \ No newline at end of file