diff --git a/docker-compose.yml b/docker-compose.yml
index f33ed98..55d5f5e 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -7,8 +7,8 @@ services:
context: ./redmine
#container_name: redmine
restart: always
- ports:
- - 8080:3000
+ #ports:
+ # - 8080:3000
environment:
REDMINE_DB_PASSWORD: "${MYSQL_ROOT_PASSWORD}"
REDMINE_DB_MYSQL: db
@@ -29,8 +29,13 @@ services:
web-svn:
build:
context: ./web
+ args:
+ MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
ports:
- - 8081:80
+ - 8080:80
+ depends_on:
+ - db
+ - ldap
db:
image: mysql:5.7
diff --git a/web/Dockerfile b/web/Dockerfile
index 4a3266b..66655c9 100644
--- a/web/Dockerfile
+++ b/web/Dockerfile
@@ -1,12 +1,18 @@
FROM httpd:alpine
+ARG MYSQL_ROOT_PASSWORD
+ENV MYSQL_PASSWORD=${MYSQL_ROOT_PASSWORD}
ADD ./httpd.conf /usr/local/apache2/conf/httpd.conf
-RUN apk update \
- apk add apache2-mod-perl \
- apache2-proxy \
- mod_dav_svn \
- perl-dbd-mysql \
- perl-ldap \
- subversion \
- ;
-#ADD ./Redmine.pm /usr/lib/perl5/core_perl/Apache/Authn/Redmine.pm
-ADD ./Redmine.pm /usr/lib/perl5/Apache/Authn/Redmine.pm
+RUN apk update ; \
+ apk add -v apache2-proxy ; \
+ apk add -v mod_dav_svn ; \
+ apk add -v perl-dbi ; \
+ apk add -v perl-dbd-mysql ; \
+ apk add -v perl-ldap ; \
+ apk add -v subversion ; \
+ cd /usr/local/apache2/conf/ ; \
+ sed -i'' "s/redminedbpassword/$MYSQL_PASSWORD/g" httpd.conf \
+ ;
+RUN apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing \
+ apache2-mod-perl \
+ ;
+ADD ./Redmine.pm /usr/local/lib/perl5/site_perl/Apache/Authn/Redmine.pm
diff --git a/web/httpd.conf b/web/httpd.conf
index 15255b5..db3e57f 100644
--- a/web/httpd.conf
+++ b/web/httpd.conf
@@ -41,6 +41,50 @@ LoadModule proxy_http_module modules/mod_proxy_http.so
ProxyPass / http://redmine:3000/
+LoadModule perl_module /usr/lib/apache2/mod_perl.so
+
+## This module has to be in your perl path
+## eg: /usr/lib/perl5/Apache/Authn/Redmine.pm
+
+PerlLoadModule Apache::Authn::Redmine
+
+LoadModule dav_module modules/mod_dav.so
+LoadModule dav_svn_module /usr/lib/apache2/mod_dav_svn.so
+
+
+ DAV svn
+ SVNParentPath "/var/svn"
+ AuthType Basic
+ AuthName redmine
+ Require valid-user
+ PerlAccessHandler Apache::Authn::Redmine::access_handler
+ PerlAuthenHandler Apache::Authn::Redmine::authen_handler
+ ## for mysql
+ RedmineDSN "DBI:mysql:database=redmine;host=db"
+ RedmineDbUser "root"
+ RedmineDbPass "redminedbpassword"
+ ## Optional where clause (fulltext search would be slow and
+ ## database dependent).
+ # RedmineDbWhereClause "and members.role_id IN (1,2)"
+ ## Optional credentials cache size
+ # RedmineCacheCredsMax 50
+
+
+#To be able to browse repository inside redmine, you must add something
+#like that :
+
+
+ DAV svn
+ SVNParentPath "/var/svn"
+ Order deny,allow
+ Deny from all
+ # only allow reading orders
+
+ Allow from redmine
+
+
+
+
ServerAdmin you@example.com