Installation on Debian/Ubuntu¶
We recommend installing Yucca on an Ubuntu Long Term Support (LTS) operating system such as 18.04 and older. In this case, work is possible on any other Linux distribution. You will also need Docker to work, installation instructions are available on the official site.
Quick install Docker
bash <(curl -sSL https://get.docker.com)
Installation via the package manager¶
When upgrading to a new version, first stop the server
sudo systemctl stop yucca
Run arch
to find out your architecture
Output arch |
Notation in the documentation |
---|---|
x86_64 | amd64 |
armv6l | armv6 |
armv7l | armv7 |
aarch64 | arm64 |
Download and install the .deb
package of the required version and architecture, a complete list of available versions: https://releases.yucca.app/
wget https://releases.yucca.app/v0.6.0/linux_amd64/free/yucca_0.6.0-1_amd64.deb
sudo dpkg -i yucca_0.6.0-1_amd64.deb
wget https://releases.yucca.app/v0.6.0/linux_arm/free/yucca_0.6.0-1_arm.deb
sudo dpkg -i yucca_0.6.0-1_arm.deb
wget https://releases.yucca.app/v0.6.0/linux_arm64/free/yucca_0.6.0-1_arm64.deb
sudo dpkg -i yucca_0.6.0-1_arm64.deb
wget https://releases.yucca.app/v0.6.0/linux_amd64/ent/yucca-enterprise_0.6.0-1_amd64.deb
sudo dpkg -i yucca-enterprise_0.6.0-1_amd64.deb
wget https://releases.yucca.app/v0.6.0/linux_arm/ent/yucca-enterprise_0.6.0-1_arm.deb
sudo dpkg -i yucca-enterprise_0.6.0-1_arm.deb
wget https://releases.yucca.app/v0.6.0/linux_arm64/ent/yucca-enterprise_0.6.0-1_arm64.deb
sudo dpkg -i yucca-enterprise_0.6.0-1_arm64.deb
After starting the WEB-interface will be available at http://ip-your-server:9910
Manual installation¶
Let's start by creating a user and a group, then add a new user to the docker
group to be able to work with Docker containers:
sudo useradd -M -U -s /bin/false -b /opt/yucca -G docker yucca
Create a directory for installation and go to it, download the latest version of Yucca:
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
sudo wget https://releases.yucca.app/v0.6.0/linux_amd64/free/yucca -O /opt/yucca/yucca
sudo chmod +x /opt/yucca/yucca
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
sudo wget https://releases.yucca.app/v0.6.0/linux_arm/free/yucca -O /opt/yucca/yucca
sudo chmod +x /opt/yucca/yucca
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
sudo wget https://releases.yucca.app/v0.6.0/linux_arm64/free/yucca -O /opt/yucca/yucca
sudo chmod +x /opt/yucca/yucca
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
sudo wget https://releases.yucca.app/v0.6.0/linux_amd64/ent/yucca -O /opt/yucca/yucca
sudo chmod +x /opt/yucca/yucca
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
sudo wget https://releases.yucca.app/v0.6.0/linux_arm/ent/yucca -O /opt/yucca/yucca
sudo chmod +x /opt/yucca/yucca
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
sudo wget https://releases.yucca.app/v0.6.0/linux_arm64/ent/yucca -O /opt/yucca/yucca
sudo chmod +x /opt/yucca/yucca
Installation ffmpeg and ffprobe:
FFmpeg version not lower than 4.0
You can use the static assembly we suggested, or any other, provided that ffmpeg and ffprobe are resolved into env by a standard name
cd /opt/yucca/ffmpeg
wget -q --show-progress https://releases.yucca.app/ffmpeg/4.4/ffmpeg-4.4-linux-amd64.tar.gz -O ffmpeg-4.4-linux-amd64.tar.gz
wget -q --show-progress https://releases.yucca.app/ffmpeg/4.4/ffmpeg-4.4-linux-amd64.tar.gz.md5 -O ffmpeg-4.4-linux-amd64.tar.gz.md5
md5sum -c ffmpeg-4.4-linux-amd64.tar.gz.md5
tar -xzf ffmpeg-4.4-linux-amd64.tar.gz ffmpeg
tar -xzf ffmpeg-4.4-linux-amd64.tar.gz ffprobe
rm -rf ffmpeg-4.4-linux-amd64.tar.gz ffmpeg-4.4-linux-amd64.tar.gz.md5
cd /opt/yucca/ffmpeg
wget -q --show-progress https://releases.yucca.app/ffmpeg/4.4/ffmpeg-4.4-linux-armv6.tar.gz -O ffmpeg-4.4-linux-armv6.tar.gz
wget -q --show-progress https://releases.yucca.app/ffmpeg/4.4/ffmpeg-4.4-linux-armv6.tar.gz.md5 -O ffmpeg-4.4-linux-armv6.tar.gz.md5
md5sum -c ffmpeg-4.4-linux-armv6.tar.gz.md5
tar -xzf ffmpeg-4.4-linux-armv6.tar.gz ffmpeg
tar -xzf ffmpeg-4.4-linux-armv6.tar.gz ffprobe
rm -rf ffmpeg-4.4-linux-armv6.tar.gz ffmpeg-4.4-linux-armv6.tar.gz.md5
cd /opt/yucca/ffmpeg
wget -q --show-progress https://releases.yucca.app/ffmpeg/4.4/ffmpeg-4.4-linux-armv7.tar.gz -O ffmpeg-4.4-linux-armv7.tar.gz
wget -q --show-progress https://releases.yucca.app/ffmpeg/4.4/ffmpeg-4.4-linux-armv7.tar.gz.md5 -O ffmpeg-4.4-linux-armv7.tar.gz.md5
md5sum -c ffmpeg-4.4-linux-armv7.tar.gz.md5
tar -xzf ffmpeg-4.4-linux-armv7.tar.gz ffmpeg
tar -xzf ffmpeg-4.4-linux-armv7.tar.gz ffprobe
rm -rf ffmpeg-4.4-linux-armv7.tar.gz ffmpeg-4.4-linux-armv7.tar.gz.md5
cd /opt/yucca/ffmpeg
wget -q --show-progress https://releases.yucca.app/ffmpeg/4.4/ffmpeg-4.4-linux-arm64.tar.gz -O ffmpeg-4.4-linux-arm64.tar.gz
wget -q --show-progress https://releases.yucca.app/ffmpeg/4.4/ffmpeg-4.4-linux-arm64.tar.gz.md5 -O ffmpeg-4.4-linux-arm64.tar.gz.md5
md5sum -c ffmpeg-4.4-linux-arm64.tar.gz.md5
tar -xzf ffmpeg-4.4-linux-arm64.tar.gz ffmpeg
tar -xzf ffmpeg-4.4-linux-arm64.tar.gz ffprobe
rm -rf ffmpeg-4.4-linux-arm64.tar.gz ffmpeg-4.4-linux-arm64.tar.gz.md5
Generating a default configuration file:
sudo /opt/yucca/yucca server --config emtpy --show-config | sed 's|data_dir = ""|data_dir = "/opt/yucca/data"|' > /opt/yucca/yucca.toml
We set the owner and access rights:
sudo chown -R yucca:yucca /opt/yucca
sudo chmod -R 2775 /opt/yucca
Create a systemd unit file and update the list of daemons for the changes to take effect:
sudo tee /lib/systemd/system/yucca.service <<EOF
[Unit]
Description=Yucca Stream <https://yucca.app>
Documentation=https://docs.yucca.app
After=syslog.target network.target remote-fs.target nss-lookup.target docker.service
[Service]
AmbientCapabilities=CAP_SYS_ADMIN
Type=simple
User=yucca
Group=yucca
SyslogIdentifier=yucca
PIDFile=/var/run/yucca.pid
ExecStart=/opt/yucca/yucca server --config /opt/yucca/yucca.toml
ExecStop=/bin/kill -s SIGTERM $MAINPID
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
Now you can start the server and test it
sudo systemctl enable yucca
sudo systemctl start yucca
After launch, the Web interface will be available at http://ip-your-server:9910