mirror of
https://github.com/scm-manager/scm-manager.git
synced 2026-01-14 11:32:12 +01:00
100 lines
3.9 KiB
Markdown
100 lines
3.9 KiB
Markdown
---
|
|
title: Debian/Ubuntu
|
|
subtitle: Installation for debian based linux distributions
|
|
displayToc: true
|
|
---
|
|
|
|
## Quickstart
|
|
|
|
The following code block will configure an apt repository for scm-manager and install it.
|
|
|
|
```bash
|
|
echo 'X-Repolib-Name: SCM-Manager
|
|
Enabled: yes
|
|
Types: deb
|
|
URIs: https://packages.scm-manager.org/repository/apt-v2-releases/
|
|
Suites: stable
|
|
Components: main
|
|
Architectures: all
|
|
Signed-By: /etc/apt/keyrings/scmm-archive-keyring.gpg' | sudo tee /etc/apt/sources.list.d/scm-manager.sources
|
|
sudo mkdir -p /etc/apt/keyrings
|
|
sudo chmod 0755 /etc/apt/keyrings
|
|
sudo sh -c 'curl -s https://keys.openpgp.org/vks/v1/by-fingerprint/23D2625B235E25A4719875A2975922F193B07D6E | gpg --dearmor > /etc/apt/keyrings/scmm-archive-keyring.gpg'
|
|
sudo chmod +r /etc/apt/keyrings/scmm-archive-keyring.gpg
|
|
sudo apt-get update
|
|
sudo apt-get install scm-server
|
|
```
|
|
|
|
After the installation of the package scm-manager will automatically start on port 8080.
|
|
There you have to create your initial admin account with an initialization token which you can find inside your server logs.
|
|
You can find more detailed information here: [first startup](../../first-startup/)
|
|
|
|
## Detailed installation
|
|
|
|
To install SCM-Manager as a debian package (.deb), we have to configure a [third-party APT repository](https://wiki.debian.org/DebianRepository/UseThirdParty).
|
|
Create a file at `/etc/apt/sources.list.d/scm-manager.sources` with the following content:
|
|
|
|
```bash
|
|
echo 'X-Repolib-Name: SCM-Manager
|
|
Enabled: yes
|
|
Types: deb
|
|
URIs: https://packages.scm-manager.org/repository/apt-v2-releases/
|
|
Suites: stable
|
|
Components: main
|
|
Architectures: all
|
|
Signed-By: /etc/apt/keyrings/scmm-archive-keyring.gpg' | sudo tee /etc/apt/sources.list.d/scm-manager.sources
|
|
```
|
|
|
|
We are using the deb822 style format supported by apt itself since version 1.1. Previous versions ignore such files with a notice message. In this case, the one-line-style format can be used:
|
|
|
|
```bash
|
|
echo 'deb [arch=all signed-by=/etc/apt/keyrings/scmm-archive-keyring.gpg] https://packages.scm-manager.org/repository/apt-v2-releases/ stable main' | sudo tee /etc/apt/sources.list.d/scm-manager.list
|
|
```
|
|
|
|
This will add the apt repository of the scm-manager stable releases to the list of your apt repositories.
|
|
To ensure the integrity of the debian packages, we have to import the gpg key for the repository.
|
|
In addition, the keyrings directory should be created beforehand, since it does not always exist by default:
|
|
|
|
```bash
|
|
sudo mkdir -p /etc/apt/keyrings
|
|
sudo chmod 0755 /etc/apt/keyrings
|
|
sudo sh -c 'curl -s https://keys.openpgp.org/vks/v1/by-fingerprint/23D2625B235E25A4719875A2975922F193B07D6E | gpg --dearmor > /etc/apt/keyrings/scmm-archive-keyring.gpg'
|
|
sudo chmod +r /etc/apt/keyrings/scmm-archive-keyring.gpg
|
|
```
|
|
|
|
After we have imported the gpg key, we can update the package index and install scm-manager:
|
|
|
|
```bash
|
|
sudo apt-get update
|
|
sudo apt-get install scm-server
|
|
```
|
|
|
|
The package will configure a systemd service called scm-server.
|
|
The service is enabled and started with installation of the package.
|
|
After the service is started, scm-manager should be reachable on port 8080
|
|
The default username is `scmadmin` with the password `scmadmin`.
|
|
|
|
## Troubleshooting
|
|
|
|
If the service does not start have a look at the systemd journal:
|
|
|
|
```bash
|
|
journalctl -u scm-server
|
|
```
|
|
|
|
For further information have a look at the scm-manager logs at `/var/log/scm`.
|
|
|
|
## Home directory
|
|
|
|
SCM-Manager stores all its information in its home directory at `/var/lib/scm`.
|
|
|
|
## Configuration
|
|
|
|
Most of the configuration of scm-manager can be configured via the web interface.
|
|
But the startup and the web server configuration must be configured via configuration files.
|
|
The default configuration of the debian package should match 90% of the use cases,
|
|
if you have to change something ensure you know what you are doing.
|
|
|
|
To configure the startup have a look at `/etc/default/scm-server`.
|
|
To configure logging and the webserver, `/etc/scm` is the right place.
|