This docker image was built on top of the Ubuntu 14.04 latest image using docker version 1.4.1
Subversion is installed as is Apache 2 web server for remote access.
Setup is as described in https://help.ubuntu.com/community/Subversion
The basic install is complete along with the WebDAV protocol setup but I have not included the SSL , SSH or custom protocol setup.
To run the image simply type (-p maps port 80 of the host to port 80 of the container)
docker run -d -p 80:80 krisdavison/svn-server /startup.sh
Optionally you can name the container using the (substitute mysvnserver with your own name)
Optionally you can map a volume to the svn repository root folder for backups etc
The image is pre-configured with a single remote user
If you would like to add additional users you can attach to the running container as below.
docker exec -it <container-name> bash
To clear all old users and add a new user simple type. (substitute your user for user-name) and then the system will request that users password.
htpasswd -c /etc/subversion/passwd user-name
or to add a new user without removing all the old ones type this. (remove the -c)
htpasswd /etc/subversion/passwd user-name
To exit the container in a safe way after making these changes simply type.
Checking it worked
On your host machine open a browser and type in the following url.
(This will ask for your username and password - Default is : user and password)
The browser should then show an empty SampleProject that has been created just to prove the svn repo works. If this does not work please make sure you are using the newest version of the docker image and that you specified /startup.sh as the executable as the last param.
Future Changes / ToDo List
- Provide a way to specify a txt file of username and passwords for simple setup of users.