2017-11-27 00:44:32 +03:00
---
date: "2017-07-21T12:00:00+02:00"
title: "Run as service in Linux"
slug: "linux-service"
weight: 10
toc: true
draft: false
menu:
sidebar:
parent: "installation"
name: "Linux service"
weight: 20
identifier: "linux-service"
---
2018-01-09 01:48:42 +03:00
### Run as service in Ubuntu 16.04 LTS
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
#### Using systemd
Run the below command in a terminal:
2017-11-27 00:44:32 +03:00
```
sudo vim /etc/systemd/system/gitea.service
2018-01-09 01:48:42 +03:00
```
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Copy the sample [gitea.service ](https://github.com/go-gitea/gitea/blob/master/contrib/systemd/gitea.service ).
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Uncomment any service that needs to be enabled on this host, such as MySQL.
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Change the user, home directory, and other required startup values. Change the
PORT or remove the -p flag if default port is used.
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Enable and start gitea at boot:
2017-11-27 00:44:32 +03:00
```
2018-01-09 01:48:42 +03:00
sudo systemctl enable gitea
2017-11-27 00:44:32 +03:00
sudo systemctl start gitea
```
2018-01-09 01:48:42 +03:00
#### Using supervisor
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Install supervisor by running below command in terminal:
2017-11-27 00:44:32 +03:00
```
sudo apt install supervisor
2018-01-09 01:48:42 +03:00
```
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Create a log dir for the supervisor logs:
2017-11-27 00:44:32 +03:00
```
2018-01-09 01:48:42 +03:00
# assuming gitea is installed in /home/git/gitea/
2017-11-27 00:44:32 +03:00
mkdir /home/git/gitea/log/supervisor
2018-01-09 01:48:42 +03:00
```
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Open supervisor config file in a file editor:
2017-11-27 00:44:32 +03:00
```
sudo vim /etc/supervisor/supervisord.conf
2018-01-09 01:48:42 +03:00
```
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Append the configuration from the sample
[supervisord config ](https://github.com/go-gitea/gitea/blob/master/contrib/supervisor/gitea ).
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Change the user(git) and home(/home/git) settings to match the deployment
environment. Change the PORT or remove the -p flag if default port is used.
2017-11-27 00:44:32 +03:00
2018-01-09 01:48:42 +03:00
Lastly enable and start supervisor at boot:
2017-11-27 00:44:32 +03:00
```
2018-01-09 01:48:42 +03:00
sudo systemctl enable supervisor
2017-11-27 00:44:32 +03:00
sudo systemctl start supervisor
```