mirror of
https://github.com/scm-manager/scm-manager.git
synced 2026-01-18 05:22:10 +01:00
Add installation instructions
This commit is contained in:
7
docs/en/installation/ces.md
Normal file
7
docs/en/installation/ces.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
title: Cloudogu Ecosystem
|
||||
subtitle: SCM-Manager installation in the Cloudogu Ecosystem
|
||||
displayToc: true
|
||||
---
|
||||
|
||||
Coming soon...
|
||||
51
docs/en/installation/debian.md
Normal file
51
docs/en/installation/debian.md
Normal file
@@ -0,0 +1,51 @@
|
||||
---
|
||||
title: Debian/Ubuntu
|
||||
subtitle: Installation for debian based linux distributions
|
||||
displayToc: true
|
||||
---
|
||||
|
||||
## Directory structure
|
||||
|
||||
Since version 1.39, SCM-Manager is delivered as RPM and DEB package. The package are generated with the [nativepkg-maven-plugin](https://github.com/sdorra/nativepkg-maven-plugin). The following table shows the directory structure which will be created by the packages:
|
||||
|
||||
File | Description
|
||||
--- | ---
|
||||
/opt/scm-server | Main directory for scm-server installation
|
||||
/etc/default/scm-server | Default settings for scm-server
|
||||
/etc/init.d/scm-server | Start script for scm-server
|
||||
/var/cache/scm/work | Cache directory
|
||||
/var/log/scm | Logging directory
|
||||
/var/lib/scm | SCM-Manager home directory
|
||||
|
||||
The package will create a user and group which are called scm. The scm user will be the owner of the process. The init script uses jsvc to start the scm-server process, which makes it possible to run scm-server on port 80 without running it as root user. The main settings for the server process are stored at /etc/default/scm-server.
|
||||
|
||||
## Installation
|
||||
|
||||
The DEB package is tested with Debian and Ubuntu. Execute the following commands to install scm-server:
|
||||
|
||||
```bash
|
||||
# add the scm-manager repository
|
||||
echo "echo 'deb https://packages.scm-manager.org/repository/apt-v1-releases/ stable main' >> /etc/apt/sources.list" | sudo sh
|
||||
|
||||
# install gpg key for the scm-manager repository
|
||||
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 D742B261
|
||||
|
||||
# update
|
||||
sudo apt-get update
|
||||
|
||||
# install scm-server
|
||||
sudo apt-get install scm-server
|
||||
```
|
||||
|
||||
## Migration from ApplicationServer or Standalone version
|
||||
|
||||
To migrate from an existing installation, you have to the following steps:
|
||||
|
||||
* Stop the old service
|
||||
* Move the folder /opt/scm-server, if it exists
|
||||
* Install the package
|
||||
* Copy the content of your existing scm home directory to /var/lib/scm
|
||||
* Change the owner of the directory and all containing files to scm:scm (chown -R scm:scm /var/lib/scm)
|
||||
* Verify *repositoryDirectory* in /var/lib/scm/config/[git|hg|svn].xml], make sure they point to respective /var/lib/scm/repositories/[git|hg|svn] and not your old location. Otherwise the repository health check will fail.
|
||||
* Optional: Reapply changes to /opt/scm-server/conf/server-config.xml and /opt/scm-server/conf/logging.xml
|
||||
* Start scm-server (/etc/init.d/scm-server start)
|
||||
52
docs/en/installation/docker.md
Normal file
52
docs/en/installation/docker.md
Normal file
@@ -0,0 +1,52 @@
|
||||
---
|
||||
title: Docker
|
||||
subtitle: Install scm-manager with docker
|
||||
displayToc: true
|
||||
---
|
||||
|
||||
## Quickstart
|
||||
|
||||
Grab the latest version from [download page](/download) and replace `<version>` in the code blocks below
|
||||
|
||||
```bash
|
||||
docker run --name scm -p 8080:8080 -v scm-home:/var/lib/scm sdorra/scm-manager:<version>
|
||||
```
|
||||
|
||||
for example:
|
||||
|
||||
```bash
|
||||
docker run --name scm -p 8080:8080 -v scm-home:/var/lib/scm sdorra/scm-manager:1.60
|
||||
```
|
||||
|
||||
|
||||
## Persistence
|
||||
|
||||
It is recommended to create a persistent volume for the scm-manager home directory.
|
||||
This allows scm-manager updates and recreation of the container without lose of data.
|
||||
The home directory is located at `/var/lib/scm`.
|
||||
It is recommended to use a volume managed by docker.
|
||||
If it is required to use a host directory, keep in mind that the scm-manager process is executed with a user which has the id 1000.
|
||||
So ensure that the user with the uid 1000 can write to the directory e.g.:
|
||||
|
||||
```text
|
||||
mkdir /scm_home
|
||||
chown 1000:1000 /scm_home
|
||||
docker run --name scm -p 8080:8080 -v /scm_home:/var/lib/scm sdorra/scm-manager:<version>
|
||||
```
|
||||
|
||||
## Docker Compose
|
||||
|
||||
If you want to use the image with docker-compose have a look at the example below.
|
||||
|
||||
```yaml
|
||||
version: '2.0'
|
||||
services:
|
||||
scm:
|
||||
image: sdorra/scm-manager:<version>
|
||||
ports:
|
||||
- "8080:8080"
|
||||
volumes:
|
||||
- scmhome:/var/lib/scm
|
||||
volumes:
|
||||
scmhome: {}
|
||||
```
|
||||
7
docs/en/installation/osx.md
Normal file
7
docs/en/installation/osx.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
title: Mac OS X
|
||||
subtitle: SCM-Manager installation on OS X using homebrew
|
||||
displayToc: true
|
||||
---
|
||||
|
||||
Coming soon...
|
||||
53
docs/en/installation/redhat.md
Normal file
53
docs/en/installation/redhat.md
Normal file
@@ -0,0 +1,53 @@
|
||||
---
|
||||
title: Redhat/CentOS/Fedora
|
||||
subtitle: Installation for Red Hat based linux distributions
|
||||
displayToc: true
|
||||
---
|
||||
|
||||
## Directory structure
|
||||
|
||||
Since version 1.39, SCM-Manager is delivered as RPM and DEB package. The package are generated with the [nativepkg-maven-plugin](https://github.com/sdorra/nativepkg-maven-plugin). The following table shows the directory structure which will be created by the packages:
|
||||
|
||||
File | Description
|
||||
--- | ---
|
||||
/opt/scm-server | Main directory for scm-server installation
|
||||
/etc/default/scm-server | Default settings for scm-server
|
||||
/etc/init.d/scm-server | Start script for scm-server
|
||||
/var/cache/scm/work | Cache directory
|
||||
/var/log/scm | Logging directory
|
||||
/var/lib/scm | SCM-Manager home directory
|
||||
|
||||
The package will create a user and group which are called scm. The scm user will be the owner of the process. The init script uses jsvc to start the scm-server process, which makes it possible to run scm-server on port 80 without running it as root user. The main settings for the server process are stored at /etc/default/scm-server.
|
||||
|
||||
## Installation
|
||||
|
||||
The RPM package is tested with Fedora and Centos. Create a new files at /etc/yum.repos.d/SCM-Manager.repo with the following content to install the scm-manager repository:
|
||||
|
||||
```text
|
||||
[scm-releases]
|
||||
name=SCM-Manager Releases
|
||||
baseurl=https://packages.scm-manager.org/repository/yum-v1-releases/
|
||||
enabled=1
|
||||
gpgcheck=0
|
||||
```
|
||||
|
||||
After file creation execute the following command to install scm-server:
|
||||
|
||||
|
||||
```bash
|
||||
# install the scm-server package
|
||||
sudo yum install scm-server
|
||||
```
|
||||
|
||||
## Migration from ApplicationServer or Standalone version
|
||||
|
||||
To migrate from an existing installation, you have to the following steps:
|
||||
|
||||
* Stop the old service
|
||||
* Move the folder /opt/scm-server, if it exists
|
||||
* Install the package
|
||||
* Copy the content of your existing scm home directory to /var/lib/scm
|
||||
* Change the owner of the directory and all containing files to scm:scm (chown -R scm:scm /var/lib/scm)
|
||||
* Verify *repositoryDirectory* in /var/lib/scm/config/[git|hg|svn].xml], make sure they point to respective /var/lib/scm/repositories/[git|hg|svn] and not your old location. Otherwise the repository health check will fail.
|
||||
* Optional: Reapply changes to /opt/scm-server/conf/server-config.xml and /opt/scm-server/conf/logging.xml
|
||||
* Start scm-server (/etc/init.d/scm-server start)
|
||||
42
docs/en/installation/unix.md
Normal file
42
docs/en/installation/unix.md
Normal file
@@ -0,0 +1,42 @@
|
||||
---
|
||||
title: Unix
|
||||
subtitle: General unix installation
|
||||
displayToc: true
|
||||
---
|
||||
|
||||
# Getting started
|
||||
|
||||
### Install Java
|
||||
|
||||
SCM-Manager needs an installed Java 1.7 or newer. It is recommended to use the [oracle jre](http://java.oracle.com/).
|
||||
How to check which version of Java is installed:
|
||||
|
||||
```bash
|
||||
java -version
|
||||
```
|
||||
|
||||
Download java from [here](http://java.oracle.com/) and follow the install instructions.
|
||||
|
||||
### Install SCM-Manager
|
||||
|
||||
Download the latest version of SCM-Manager from
|
||||
[here](http://www.scm-manager.org/download/), unpack the .zip
|
||||
or .tar.gz package and start SCM-Manager with
|
||||
|
||||
```bash
|
||||
scm-server/bin/scm-server
|
||||
```
|
||||
|
||||
### First access
|
||||
|
||||
| | |
|
||||
| ------------ | ----------------------- |
|
||||
| **URL** | <http://localhost:8080> |
|
||||
| **Username** | scmadmin |
|
||||
| **Password** | scmadmin |
|
||||
|
||||
### Mercurial
|
||||
|
||||
Subversion and Git will work out of the box, but if you want to use
|
||||
mercurial with SCM-Manager you have to install mercurial version
|
||||
**1.9** or newer.
|
||||
67
docs/en/installation/windows.md
Normal file
67
docs/en/installation/windows.md
Normal file
@@ -0,0 +1,67 @@
|
||||
---
|
||||
title: Windows
|
||||
subtitle: Install scm-manager on windows
|
||||
displayToc: true
|
||||
---
|
||||
|
||||
# Getting started
|
||||
|
||||
### Install Java
|
||||
|
||||
SCM-Manager needs an installed Java 1.7 or newer. It is recommended to use the [oracle jre](http://java.oracle.com/).
|
||||
How to check which version of Java is installed:
|
||||
|
||||
```bash
|
||||
java -version
|
||||
```
|
||||
|
||||
Download java from [here](http://java.oracle.com/) and follow the install instructions.
|
||||
|
||||
### Install SCM-Manager
|
||||
|
||||
Download the latest version of SCM-Manager from
|
||||
[here](http://www.scm-manager.org/download/), unpack the .zip
|
||||
or .tar.gz package and start SCM-Manager with
|
||||
|
||||
```bash
|
||||
scm-server/bin/scm-server
|
||||
```
|
||||
|
||||
### First access
|
||||
|
||||
| | |
|
||||
| ------------ | ----------------------- |
|
||||
| **URL** | <http://localhost:8080> |
|
||||
| **Username** | scmadmin |
|
||||
| **Password** | scmadmin |
|
||||
|
||||
### Mercurial
|
||||
|
||||
Subversion and Git will work out of the box, but if you want to use
|
||||
mercurial with SCM-Manager you have to install mercurial version
|
||||
**1.9** or newer.
|
||||
|
||||
The installation of mercurial for SCM-Manager is very complicated on
|
||||
windows, have a look at:
|
||||
|
||||
- [#1](https://bitbucket.org/sdorra/scm-manager/issues/1/no-ability-to-rename-repository)
|
||||
- [xeFcruG70s8J](https://groups.google.com/d/msg/scmmanager/zOigMIn2RiE/xeFcruG70s8J "Python/Hg Package Build Process")
|
||||
- [build-win-hg-packages](https://bitbucket.org/sdorra/build-win-hg-packages)
|
||||
|
||||
SCM-Manager comes with the option to install packages for windows to
|
||||
simplify this setup. To use such a package just login as Administrator,
|
||||
goto \"Repository Types\", click the \"Start Configuration Wizard\" and
|
||||
Choose \"Download and install\".
|
||||
|
||||
If you see an error like the following:
|
||||
|
||||
```text
|
||||
sonia.scm.repository.RepositoryException: command exit with error 14001 and message: 'The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log or use the command-line sxstrace.exe tool for more detail.'
|
||||
```
|
||||
|
||||
Then you have to install [Microsoft Visual C++ 2008 SP1 Redistributable Package
|
||||
(x86)](http://www.microsoft.com/en-us/download/details.aspx?id=5582).
|
||||
Note you have to use the x86 package and not the x64 package, because we
|
||||
use 32bit python in SCM-Manager on Windows. For more informations have a
|
||||
look at
|
||||
[#522](https://bitbucket.org/sdorra/scm-manager/issue/552/hg-repo-creation-failed).
|
||||
Reference in New Issue
Block a user