Skip to content

SVN

code

bash
docker run --name svn -it -d -p 3690:3690 -v /data/svn/:/data/ centos

yum install subversion
cd /data/
svnadmin create svn
svnadmin create .
svnserve.vi conf
svnserve -d -r /data/
Dockerfile
FROM centos

RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

RUN yum -y update

RUN yum install -y subversion
RUN yum install -y make

docker-compose.yml

yaml
version: '3'
services:
  svn:
    build: 
      context: .
      dockerfile: Dockerfile
    image: centos_svn
    restart: always
    volumes:
      - ./data/:/data/
    working_dir: /data/
    environment:
      TZ: Asia/Shanghai
    tty: true
    command: /bin/bash -c "svnserve -d -r /data/; while true; do echo hello; sleep 6000; done"
    ports:
      - "3690:3690"

Makefile

Makefile
build:
  docker build -t centos_svn .
bash:
  docker exec -it svn /bin/bash
run:
  docker run --name svn -it -d -p 3690:3690 -v /data/svn/data/:/data/ -v $(PWD):/root/project/ -w /root/project/ centos_svn
serve:
  svnserve -d -r /data/