Giter Site home page Giter Site logo

docker-svnserve's Introduction

docker-svnserve

What is docker-svnserve?

docker-svnserve is a unofficial docker image for the svnserve daemon.

Why?

There are already a number of avaliable docker images for subversion and svnserve hosting. But most of them either are:

  • Too involved; Containers shouldn't be like aplications themselves with configuration in environment variables, etc. Instead, images should be extensible so other users can create their own images with customizations, based on yours.
  • Bloated; Based on heavy fat-container base images.
  • Don't handle signals properly, forcing docker to send SIGKILL to the process.

This image is based on Alpine linux for small footprint and uses Tini as a single-child init system to properly handle signals, reap zombies, etc.

How to use this image

The image is intented to run as a daemon; it exposed the default svnserve port (3690) and a single volume at /var/opt/svn which svnserve uses as it's root. A container based on this image could be created as:

docker run \
    --detatch \
    --name svnserve \
    --restart always \
    --expose 3690:3690/tcp \
    --volume /var/opt/svn:/var/opt/svn:rw \
    gcscaglia/svnserve:latest

With the above comand, svnserve will:

  • run in daemon mode
  • listen on the standard port on all host's interfaces
  • (re)start with the system
  • serve repositories from /var/opt/svn in the host's filesystem.

Adminstration

In order to create, manage and backup repositories, two approaches can be combined:

  1. Directly accessing the repositories on the filesystem. This should be enough for cold-bakups and user management depending on how you autenticate your users.
  2. By running your commands inside the container (using docker-exec). This allows access to svn adminstration tools

docker-svnserve's People

Contributors

gcscaglia avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.