88 lines
2.3 KiB
Markdown
88 lines
2.3 KiB
Markdown
---
|
|
weight: 10
|
|
---
|
|
# Installation
|
|
|
|
Vieter consists of a single binary, akin to busybox. The binary's behavior is
|
|
determined by its CLI arguments, e.g. `vieter server` starts the repository
|
|
server.
|
|
|
|
All installation solutions can be configured the same way,
|
|
as described [here](/configuration).
|
|
|
|
## Docker
|
|
|
|
Docker images are published to the
|
|
[`chewingbever/vieter`](https://hub.docker.com/r/chewingbever/vieter) Docker
|
|
Hub repository. You can either pull a release tag (e.g.
|
|
`chewingbever/vieter:0.1.0-rc1`), or pull the `chewingbever/vieter:dev` tag.
|
|
The latter is updated every time a new commit is pushed to the development
|
|
branch. This branch will be the most up to date, but does not give any
|
|
guarantees about stability, so beware!
|
|
|
|
Due to the single-binary design of Vieter, this image can be used both for the
|
|
repository server & the cron daemon.
|
|
|
|
Below is an example compose file to set up both the repository server & the
|
|
cron daemon:
|
|
|
|
```yaml
|
|
version: '3'
|
|
|
|
services:
|
|
server:
|
|
image: 'chewingbever/vieter:dev'
|
|
restart: 'always'
|
|
|
|
environment:
|
|
- 'VIETER_API_KEY=secret'
|
|
- 'VIETER_DEFAULT_ARCH=x86_64'
|
|
volumes:
|
|
- 'data:/data'
|
|
|
|
cron:
|
|
image: 'chewingbever/vieter:dev'
|
|
restart: 'always'
|
|
user: root
|
|
command: 'vieter cron'
|
|
|
|
environment:
|
|
- 'VIETER_API_KEY=secret'
|
|
# MUST be public URL of Vieter repository
|
|
- 'VIETER_ADDRESS=https://example.com'
|
|
- 'VIETER_DEFAULT_ARCH=x86_64'
|
|
- 'VIETER_MAX_CONCURRENT_BUILDS=2'
|
|
- 'VIETER_GLOBAL_SCHEDULE=0 3'
|
|
|
|
volumes:
|
|
data:
|
|
```
|
|
|
|
## Binary
|
|
|
|
On the
|
|
[releases](https://git.rustybever.be/vieter/vieter/releases)
|
|
page, you can find statically compiled binaries for all
|
|
released versions. This is the same binary as used inside
|
|
the Docker images.
|
|
|
|
## Arch
|
|
|
|
I publish both development & release versions of Vieter to my personal
|
|
repository, https://arch.r8r.be. Packages are available for `x86_64` &
|
|
`aarch64`. To use the repository, add the following to your `pacman.conf`:
|
|
|
|
```
|
|
[vieter]
|
|
Server = https://arch.r8r.be/$repo/$arch
|
|
SigLevel = Optional
|
|
```
|
|
|
|
Afterwards, you can update your system & install the `vieter` package for the
|
|
latest official release or `vieter-git` for the latest development release.
|
|
|
|
## Building from source
|
|
|
|
The project [README](https://git.rustybever.be/vieter/vieter#building) contains
|
|
instructions for building Vieter from source.
|