Skip to content
Lightweight Docker image to build a container running an SVN server
PHP Dockerfile
Branch: master
Clone or download

Docker Image


Lightweight container providing an SVN server, based on Alpine Linux and S6 process management (see here for details). The access to the server is possible via WebDav protocol (http://), and via custom protocol (svn://). A complete tutorial on how to build this image, and how to run the container is available on Medium

Running Commands

To run the image, you can use the following command:

docker run -d --name svn-server -p 80:80 -p 3690:3690 elleflorio/svn-server

You can optionally bind a local folder to the container folder that will store your repositories using the flag -v <hostpath>:/home/svn.


You need to setup username and password for the access via WebDav protocol. You can use the following command from your host machine:

docker exec -t svn-server htpasswd -b /etc/subversion/passwd <username> <password>

To verify that everything is up and running, open your browser and connect to http://localhost/svn. The system should ask you for the username and password, then it will show you an empty folder (no repos yet!). Check also that the custom protocol is working fine: go to your terminal and type svn info svn://localhost:3690. The system should connect to the server and tell you that is not able to find any repository. For further information on how to configure Subversion, please refer to the official web page.

Alternative configuration via SVNADMIN

the image provides a graphical ui using the SVNADMIN interface via http://localhost/svnadmin. You'll be prompted with a setup page, remember to test every step on the page then save the configuration.

How to contribute

I'm super happy if you want to contribute! I do my best to keep this image updated and solve the issues that may arise, but I'm not much an operations guy, and I have very limited free time. 😅

If you find something that can be improved or the solution to some issue, just comment the issue to notify that you will handle it, and then submit a pull request. I will then merge it and publish the updated image in the Docker Hub. 😉

Thank you! 😄

You can’t perform that action at this time.