Studio on Docker
These scripts are using docker on linux. Adapt them to your OS if needed.
Prerequisites
1. Having docker installed
bash
curl -sSL get.docker.com | sh && sudo usermod -aG docker $(whoami)2. Logout then login again
bash
logout3. Prepare application data
bash
cd ~ && mkdir -p obscreen/data/db obscreen/data/uploads obscreen/license && cd obscreen4. Put your license file
You can either:
- Upload your license file to the Studio Server at first run.
- Or place the license file
obscreen.licin thelicensedirectory at the root of the application files using a docker volume.
License file
You need to have a valid license file to use the studio server. Learn more about how to get a license.
> Run with docker compose (recommended)
bash
curl https://raw.githubusercontent.com/obscreen/obscreen/master/docker-compose.yml > docker-compose.yml && docker compose up --detach --pull=always> Run with docker run
bash
docker run -d --restart=always --name obscreen --pull=always --net=host \
-v /etc/localtime:/etc/localtime:ro \
-v ./license:/app/license \
-v ./data:/app/data \
-e PORT=5000 \
-p 5000:5000 \
obscreen/obscreen:latestConfiguration
Application settings are available at
http://<STUDIO_URL>/settingspage after run.Server configuration is editable through environment variables too.
Troubleshoot
Check logs with docker compose logs -f
Upgrade and Restart Containers
For Docker Compose
To pull the latest image:
- Go to where the
docker-compose.ymlfile is located (~/obscreenfor manual install or/usr/share/obscreen/obscreen-studiofor ObscreenOS install) - Stop the container
- Pull new container
- Restart it with the same options
bash
cd [where your docker-compose.yml file is located]
docker compose down
docker compose pull
docker compose up --detach --pull=alwaysFor Docker (Single Container)
To pull the latest image, stop the container and restart it with the same options (--pull=always does the trick), use the following command:
bash
docker stop obscreen
docker run -d --restart=always --name obscreen --pull=always --net=host \
-v /etc/localtime:/etc/localtime:ro \
-v ./license:/app/license \
-v ./data:/app/data \
-e PORT=5000 \
-p 5000:5000 \
obscreen/obscreen:latest