You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@community.apache.org by se...@apache.org on 2026/01/11 21:19:40 UTC
svn commit: r1931242 - in comdev/reporter.apache.org/trunk: . docker-config docker-data docker-data/logs
Author: sebb
Date: Sun Jan 11 21:19:39 2026
New Revision: 1931242
Log:
Add Docker build
Added:
comdev/reporter.apache.org/trunk/.dockerignore
comdev/reporter.apache.org/trunk/DOCKER.md
comdev/reporter.apache.org/trunk/Dockerfile
comdev/reporter.apache.org/trunk/compose.yml
comdev/reporter.apache.org/trunk/docker-config/
comdev/reporter.apache.org/trunk/docker-config/25-reporter.conf (contents, props changed)
comdev/reporter.apache.org/trunk/docker-config/start-reporter.sh (contents, props changed)
comdev/reporter.apache.org/trunk/docker-data/
comdev/reporter.apache.org/trunk/docker-data/README.md
comdev/reporter.apache.org/trunk/docker-data/logs/ (props changed)
Added: comdev/reporter.apache.org/trunk/.dockerignore
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ comdev/reporter.apache.org/trunk/.dockerignore Sun Jan 11 21:19:39 2026 (r1931242)
@@ -0,0 +1,4 @@
+# Only allow required files
+
+**
+!docker-config/*
Added: comdev/reporter.apache.org/trunk/DOCKER.md
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ comdev/reporter.apache.org/trunk/DOCKER.md Sun Jan 11 21:19:39 2026 (r1931242)
@@ -0,0 +1,26 @@
+# Local testing using Docker
+
+## Build
+
+```docker compose build```
+
+## Start application
+
+```docker compose up```
+
+Browse to ```http://localhost/```
+
+Webserver logs will appear under ```docker-data/logs```
+Gunicorn output to stdout
+
+## Start shell in running container
+
+```docker compose exec reporter bash```
+
+## Start container with shell instead of webserver
+
+```docker compose run -rm -P reporter bash```
+
+To start the app:
+
+```docker-config/start-reporter.sh```
Added: comdev/reporter.apache.org/trunk/Dockerfile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ comdev/reporter.apache.org/trunk/Dockerfile Sun Jan 11 21:19:39 2026 (r1931242)
@@ -0,0 +1,25 @@
+FROM ubuntu:24.04
+
+RUN apt-get update && \
+ apt-get install -y \
+ bash \
+ apache2 \
+ python3-pip \
+ gunicorn
+
+RUN pip install requests --break-system-packages
+
+RUN a2enmod cgi headers proxy proxy_http authn_anon
+
+RUN echo "ServerName reporter.local" > /etc/apache2/conf-enabled/servername.conf
+
+COPY docker-config/25-reporter.conf /etc/apache2/sites-enabled/000-default.conf
+
+WORKDIR /usr/local/etc/tokens
+RUN touch /usr/local/etc/tokens/jira.txt
+
+WORKDIR /var/www/reporter.apache.org
+
+EXPOSE 80
+
+CMD ["docker-config/start-reporter.sh"]
\ No newline at end of file
Added: comdev/reporter.apache.org/trunk/compose.yml
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ comdev/reporter.apache.org/trunk/compose.yml Sun Jan 11 21:19:39 2026 (r1931242)
@@ -0,0 +1,10 @@
+services:
+ reporter:
+ build:
+ context: .
+ dockerfile: Dockerfile
+ volumes:
+ - .:/var/www/reporter.apache.org/
+ - ./docker-data/logs:/var/log/apache2
+ ports:
+ - 80:80
Added: comdev/reporter.apache.org/trunk/docker-config/25-reporter.conf
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ comdev/reporter.apache.org/trunk/docker-config/25-reporter.conf Sun Jan 11 21:19:39 2026 (r1931242)
@@ -0,0 +1,43 @@
+<VirtualHost *:80>
+ ServerName reporter.local
+ ServerAdmin dev@community.apache.org
+
+ ## Vhost docroot
+ DocumentRoot "/var/www/reporter.apache.org/site"
+
+ ## Directories, there should at least be a declaration for /var/www/reporter.apache.org/site
+
+ <Directory "/var/www/reporter.apache.org/site">
+ Options Indexes FollowSymLinks MultiViews ExecCGI
+ AllowOverride None
+ Require all granted
+ DirectoryIndex index.py index.html
+ </Directory>
+
+ ## Logging
+ ErrorLog "/var/log/apache2/reporter_error.log"
+ ServerSignature Off
+ CustomLog "/var/log/apache2/reporter_access.log" combined
+
+ ## Custom fragment
+ AddHandler cgi-script .py
+
+ <Location />
+ AuthName "Any"
+ AuthType Basic
+ AuthBasicProvider anon
+ Anonymous_NoUserID off
+ Anonymous_MustGiveEmail on
+ Anonymous_VerifyEmail off
+ Anonymous_LogEmail off
+ Anonymous *
+ Require valid-user
+ </Location>
+
+ Alias /releases/ /var/www/reporter.apache.org/data/releases/
+ ProxyPass /api/ http://localhost:8000/api/
+ ProxyPass /quickjson http://localhost:8000/api/overview
+ # Use main ASF favicon
+ Redirect /favicon.ico https://apache.org/favicons/favicon.ico
+
+</VirtualHost>
Added: comdev/reporter.apache.org/trunk/docker-config/start-reporter.sh
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ comdev/reporter.apache.org/trunk/docker-config/start-reporter.sh Sun Jan 11 21:19:39 2026 (r1931242)
@@ -0,0 +1,7 @@
+#!/usr/bin/env bash
+rm /var/log/apache2/*.log
+
+apache2ctl start
+
+cd scripts
+exec gunicorn -b 127.0.0.1 -w 2 wsgi:app
\ No newline at end of file
Added: comdev/reporter.apache.org/trunk/docker-data/README.md
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ comdev/reporter.apache.org/trunk/docker-data/README.md Sun Jan 11 21:19:39 2026 (r1931242)
@@ -0,0 +1 @@
+Temporary workspace for container
\ No newline at end of file