rename files

This commit is contained in:
jr-k 2024-05-16 02:51:16 +02:00
parent 241da7f67a
commit c2c8494874
7 changed files with 37 additions and 19 deletions

View File

@ -1,4 +1,4 @@
DEBUG=false
PORT=5000
SECRET_KEY=ANY_SECRET_KEY_HERE
PLAYER_AUTOSTART_FILE=/home/pi/obscreen/system/start-chromium.sh # Replace by "/dev/null" if not needed
PLAYER_AUTOSTART_FILE=./var/run/play # Replace by "/dev/null" if not needed

View File

@ -9,7 +9,7 @@ services:
- PLAYER_AUTOSTART_FILE=/app/var/run/play
- SECRET_KEY=ANY_SECRET_KEY_HERE
volumes:
- /home/pi/obscreen/system/start-chromium.sh:/app/var/run/play
- ./var/run/play:/app/var/run/play
- ./data/db:/app/data/db
- ./data/uploads:/app/data/uploads
ports:

View File

@ -6,6 +6,14 @@
---
## 🐳 Run with docker
### Install docker if needed
```bash
curl -sSL get.docker.com | sh
sudo usermod -aG docker pi
logout
#then login again
```
### With docker (for test)
```bash
# Prepare application data file tree
@ -41,12 +49,14 @@ docker compose up --detach --pull always
```bash
# Install system dependencies
sudo apt-get update
sudo apt-get install -y git
sudo apt-get install -y git python3-pip python3-venv
# Get files
git clone https://github.com/jr-k/obscreen.git && cd obscreen
# Install application dependencies
python3 -m venv venv
source ./venv/bin/python
pip3 install -r requirements.txt
# Add some sample data
@ -62,7 +72,7 @@ cp .env.dist .env
### Start server (for test)
```bash
./obscreen.py
python ./obscreen.py
```
### Start server forever with systemctl

View File

@ -15,7 +15,7 @@
### Install docker if needed
```bash
curl -sSL get.docker.com | sh
sudo usermod -aG docker $(whoami)
sudo usermod -aG docker pi
logout
#then login again
```
@ -23,11 +23,14 @@ logout
### With docker (for test)
```bash
# Prepare application data file tree and prepare player autostart file
cd /home/pi && mkdir -p obscreen/data/db obscreen/data/uploads obscreen/system && touch system/start-chromium.sh && cd obscreen
# Prepare application data file tree
cd /home/pi && mkdir -p obscreen/data/db obscreen/data/uploads && cd obscreen
# Prepare player autostart file
mkdir -p var/run && touch var/run/play && chmod +x var/run/play
# Run the Docker container
ocker run --rm --name obscreen --pull=always \
docker run --rm --name obscreen --pull=always \
-e DEBUG=false \
-e PORT=5000 \
-e PLAYER_AUTOSTART_FILE=/app/var/run/play \
@ -35,14 +38,17 @@ ocker run --rm --name obscreen --pull=always \
-p 5000:5000 \
-v ./data/db:/app/data/db \
-v ./data/uploads:/app/data/uploads \
-v /home/pi/obscreen/system/start-chromium.sh:/app/var/run/play \
-v ./var/run/play:/app/var/run/play \
jierka/obscreen:latest
```
### Or with docker-compose
```bash
# Prepare application data file tree
cd /home/pi && mkdir -p obscreen/data/db obscreen/data/uploads obscreen/system && touch system/start-chromium.sh && cd obscreen
cd /home/pi && mkdir -p obscreen/data/db obscreen/data/uploads obscreen/system && cd obscreen
# Prepare player autostart file
mkdir -p var/run && touch var/run/play && chmod +x var/run/play
# Download docker-compose.yml
curl https://raw.githubusercontent.com/jr-k/obscreen/master/docker-compose.yml > docker-compose.yml
@ -56,12 +62,14 @@ docker compose up --detach --pull always
```bash
# Install system dependencies
sudo apt-get update
sudo apt-get install -y git
sudo apt-get install -y git python3-pip python3-venv
# Get files
git clone https://github.com/jr-k/obscreen.git && cd obscreen
# Install application dependencies
python3 -m venv venv
source ./venv/bin/python
pip3 install -r requirements.txt
# Add some sample data
@ -77,7 +85,7 @@ cp .env.dist .env
### Start server (for test)
```bash
./obscreen.py
python ./obscreen.py
```
### Start server forever with systemctl

View File

@ -12,7 +12,7 @@ load_dotenv()
class ConfigManager:
DEFAULT_PORT = 5000
DEFAULT_PLAYER_AUTOSTART_PATH = '/home/pi/obscreen/system/start-chromium.sh'
DEFAULT_PLAYER_AUTOSTART_PATH = './var/run/play'
VERSION_FILE = 'version.txt'
def __init__(self, variable_manager: VariableManager):
@ -111,9 +111,8 @@ class ConfigManager:
if os.path.isdir(path) or not os.path.exists(path):
logging.error(
"Player autostart file {} doesn't exist on your server, please create it by executing follow command: \n'rm -rf ./var/run/play 2>/dev/null ; sudo touch {}'\n".format(
player_autostart_path,
self.DEFAULT_PLAYER_AUTOSTART_PATH
"Player autostart file {} doesn't exist on your server'\n".format(
player_autostart_path
)
)
sys.exit(1)
@ -122,8 +121,7 @@ class ConfigManager:
player_url = self.map().get('player_url')
os.makedirs(os.path.dirname(player_autostart_path), exist_ok=True)
xenv_presets = """
#!/bin/bash
xenv_presets = """#!/bin/bash
# Disable screensaver and DPMS
xset s off

View File

@ -4,7 +4,7 @@ After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/xinit /home/pi/obscreen/system/start-chromium.sh -- :0 -nolisten tcp vt7 -keeptty
ExecStart=/usr/bin/xinit /home/pi/obscreen/var/run/play -- :0 -nolisten tcp vt7 -keeptty
User=pi
Group=pi
Restart=on-failure

View File

@ -1,3 +1,4 @@
#!/bin/bash
# Disable screensaver and DPMS
@ -19,3 +20,4 @@ HEIGHT=$(echo $RESOLUTION | cut -d 'x' -f 2)
# Start Chromium in kiosk mode
chromium-browser --disable-features=Translate --ignore-certificate-errors --disable-web-security --disable-restore-session-state --autoplay-policy=no-user-gesture-required --start-maximized --allow-running-insecure-content --remember-cert-error-decisions --noerrdialogs --kiosk --incognito --window-position=0,0 --window-size=${WIDTH},${HEIGHT} --display=:0 http://localhost:5000