Xibo — це рішення для цифрових вивісок із відкритим вихідним кодом (публічні вивіски), яке складається з веб-системи керування вмістом (CMS). Найкращий спосіб привернути увагу людей до ваших дуже важливих оголошень можна за допомогою цифрових вивісок за допомогою Xibo. Це дозволяє нам перетворювати комп’ютери та телевізори на особливий засіб поширення інформації, перетворюючи їх на інформаційні стійки, які ви можете розмістити в стратегічних місцях, щоб привернути увагу людей.
Використовуючи Xibo , ви можете налаштувати власний сервер цифрових вивісок, який може автоматично надсилати зображення, відео та навіть презентації PowerPoint у кіоски, дозволяючи вам тримати всю свою організацію в курсі останніх новин, не вдаючись до масових розсилок електронною поштою чи необхідності вручну редагувати файли чи слайд-шоу на кількох машинах.;
Xibo можна запускати через Docker або на веб-сервері з встановленим MySQL/PHP. У цьому посібнику ми дізнаємося, як інсталювати Xibo CMS з Docker на Ubuntu 20.04
Крок 1: Встановіть Docker
Спочатку ми встановимо Docker-Engine і Docker-Compose.
Встановіть пакети попередніх умов:
sudo apt install apt-transport-https ca-certificates curl software-properties-common
Тепер ми повинні додати ключ GP репозиторію докерів:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Давайте тепер додамо Docker до джерел APT
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
Зараз ми можемо встановити докер
sudo apt install docker-ce
sudo curl -L https://github.com/docker/compose/releases/download/v2.0.1/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
Далі встановіть правильні дозволи, щоб docker-composeкоманда була доступною для виконання:
sudo chmod +x /usr/local/bin/docker-compose
Щоб переконатися, що інсталяція пройшла успішно, ви можете виконати:
docker-compose --version
Docker Compose version v2.0.1
Тепер нам потрібно додати не-root користувача до групи докерів, щоб користувач міг використовувати команду докер без привілеїв sudo:
sudo usermod -aG docker docker
Крок 2. Завантажте та розпакуйте файл Xibo Docker
Давайте спочатку створимо папку нашої Xibo CMS
sudo mkdir /opt/xibo
Надайте дозволи користувачеві
sudo chown -R docker:docker /opt/xibo
cd /opt/xibo
Ви можете завантажити останню версію Завантажити Xibo CMS :
wget -O xibo-docker.tar.gz https://xibo.org.uk/api/downloads/cms
На момент написання цієї статті я використовую версію Xibo 3.0.3
tar --strip-components=1 -zxvf xibo-docker.tar.gz
Тепер у нас є все, щоб встановити Xibo
Крок 3: Налаштуйте Xibo Docker-compose
Наш контейнер Xibo працюватиме через docker-compose. Отже, файли розпаковуються в/opt/xibo
ls -l /opt/xibo total 84 -rw-rw-r-- 1 franck franck 1491 Sep 8 08:01 cms_custom-ports.yml.template -rw-rw-r-- 1 franck franck 1159 Sep 8 08:01 cms_remote-mysql.yml -rw-rw-r-- 1 franck franck 4024 Sep 8 08:01 config.env.template -rw-rw-r-- 1 franck franck 2231 Sep 8 08:01 config.env.template-remote-mysql -rw-rw-r-- 1 franck franck 1511 Nov 2 23:18 docker-compose.yml -rw-rw-r-- 1 franck franck 34520 Sep 8 08:01 LICENSE -rw-rw-r-- 1 franck franck 2088 Sep 8 08:01 README.md drwxr-xr-x 5 root root 4096 Nov 2 17:25 shared -rw-r--r-- 1 franck franck 15570 Sep 8 08:54 xibo-docker.tar.gz
Xibo використовує файл конфігурації, щоб повідомити докеру, як налаштовано середовище, наприклад конфігурацію електронної пошти, пароль mysql тощо. Файл шаблону з необхідною інформацією присутній і називається config.env.template; ми зробимо копію цього файлу, перейменувавши його наconfig.env
cp config.env.template config.env
Тепер ми відредагуємо деяку інформацію, як показано нижче
nano config.env
MYSQL_PASSWORD=YOUR_DB_PASSWORD CMS_SERVER_NAME=YOUR_DOMAIN_NAME
Також потрібно підлаштувати поштові нотифікації
## SMTP Server Hostname CMS_SMTP_SERVER=smtp.gmail.com:587 ## SMTP Username CMS_SMTP_USERNAME=Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її. ## SMTP Password CMS_SMTP_PASSWORD=yourpassword ## Use a TLS Connection YES/NO CMS_SMTP_USE_TLS=YES ## Use a STARTTLS Connection YES/NO CMS_SMTP_USE_STARTTLS=YES ## Rewrite domain (the domain your email will appear to come from) CMS_SMTP_REWRITE_DOMAIN=gmail.com ## Hostname that we should identify ourself to the remote server as CMS_SMTP_HOSTNAME=gmail.com ## Can the From line be overridden in the outbound email ## NB GMail will rewrite the From address anyway so it's not important ## for GMail - YES/NO CMS_SMTP_FROM_LINE_OVERRIDE=YES ## Fix the from email address if your SMTP relay relies on ## a specific value - eg one.com # CMS_SMTP_FROM=Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.
Зазвичай Xibo має веб-інтерфейс за замовчуванням, який працює на порту 80, але ми змінимо цю інформацію лише на порт 8080, оскільки ми будемо використовувати Nginx для проксі-сервера зв’язку на портах 80 і 443. Для цього нам потрібно відредагувати файл docker-compose. редагувати лише порт cms-webслужби
nano docker-compose.yml
cms-web: image: xibosignage/xibo-cms:release-3.0.3 volumes: - "./shared/cms/custom:/var/www/cms/custom:Z" - "./shared/backup:/var/www/backup:Z" - "./shared/cms/web/theme/custom:/var/www/cms/web/theme/custom:Z" - "./shared/cms/library:/var/www/cms/library:Z" - "./shared/cms/web/userscripts:/var/www/cms/web/userscripts:Z" - "./shared/cms/ca-certs:/var/www/cms/ca-certs:Z" restart: always links: - cms-db:mysql - cms-xmr:50001 environment: - XMR_HOST=cms-xmr - CMS_USE_MEMCACHED=true - MEMCACHED_HOST=cms-memcached env_file: config.env ports: - "8080:80"
Крок 4: Налаштуйте Xibo за допомогою SSL за Nginx
sudo apt install nginx
У цій статті ми припускаємо, що у вас уже є сертифікат SSL. У нашому випадку ми скопіюємо сертифікат і ключ для доменного імені
sudo cp xibo.pc-service.crt /etc/nginx/certs/xibo.pc-service.crt sudo cp xibo.pc-service.key /etc/nginx/certs/xibo.pc-service.key
Тепер створіть файл конфігурації Xibo. Обов’язково замініть значення IP-адреси сервера, імені домену Xibo, сертифікатів Xibo та ключів на належні, пов’язані з вашими конфігураціями.
sudo nano /etc/nginx/sites-available/xibo_cms.conf
upstream xibo.pc-service.com { server 127.0.0.1:8080; } server { server_name xibo.pc-service.com; listen 80 ; access_log /var/log/nginx/xibo.log; return 301 https://$host$request_uri; } server { server_name xibo.dopc-servicemain.com; listen 443 ssl http2 ; access_log /var/log/nginx/xibo.log; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS'; ssl_prefer_server_ciphers on; ssl_session_timeout 5m; ssl_session_cache shared:SSL:50m; ssl_session_tickets off; ssl_certificate /etc/nginx/certs/xibo.pc-service.crt; ssl_certificate_key /etc/nginx/certs/xibo.pc-service.key; add_header Strict-Transport-Security "max-age=31536000"; location / { proxy_pass http://xibo.pc-service.com; } }
Тепер створено символічний файл конфігурації
sudo ln -s /etc/nginx/sites-available/xibo_cms.conf /etc/nginx/sites-enabled/xibo_cms.conf
Оскільки це наша перша конфігурація, видаліть конфігурацію за замовчуванням на ввімкнених сайтах, щоб уникнути конфліктів
sudo rm /etc/nginx/sites-enabled/default
Тепер запустіть службу nginx
sudo systemctl start nginx
Тепер увімкніть під час запуску
sudo systemctl enable nginx
Перевірте конфігурацію
sudo nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Тепер перезапустіть службу, щоб врахувати конфігурацію
sudo systemctl restart nginx
Крок 5: Встановіть контейнер Xibo
Тепер, коли наш Nginx налаштовано, ми можемо запустити наш файл docker-compose
cd /opt/xibo
Ми запустимо файл docker-compose у фоновому режимі. Перший раз це може зайняти деякий час
docker-compose up -d
Тепер можна подивитися на запущені контейнери
docker container ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b5e8dda81529 xibosignage/xibo-cms:release-3.0.3 "/entrypoint.sh" About a minute ago Up About a minute 0.0.0.0:8080->80/tcp, :::8080->80/tcp xibo-cms-web-1 9f4591f0f91a mysql:5.7 "docker-entrypoint.s…" About a minute ago Up About a minute 3306/tcp, 33060/tcp xibo-cms-db-1 b706402036a0 xibosignage/xibo-xmr:release-0.8 "/entrypoint.sh" 2 minutes ago Up 2 minutes 0.0.0.0:9505->9505/tcp, :::9505->9505/tcp, 50001/tcp xibo-cms-xmr-1 75a971ab7435 memcached:alpine "docker-entrypoint.s…" 2 minutes ago Up 2 minutes 11211/tcp xibo-cms-memcached-1 3d2e30e8f9cb ianw/quickchart "node --max-http-hea…" 2 minutes ago Up 2 minutes 3400/tcp xibo-cms-quickchar t-1
Тепер ви можете спробувати отримати доступ до сторінки Xibo за своїм доменним іменем http://xibo.pc-service.cv.ua
Облікові дані Xibo за замовчуванням:
username: xibo_admin password: password
Змінити пароль можна в налаштуваннях профілю.
Якщо ви хочете зупинити Xibo, просто перейдіть до папки та виконайте команду
docker-compose down
Висновок У цьому посібнику ми дізналися, як інсталювати Xibo CMS з Docker на Ubuntu 20.04. Якщо ви бажаєте завантажити зображення великого розміру, це можна зробити за допомогою конфігурації файлу «Php.ini». Для подальших налаштувань і налаштування Xibo CMS ви можете прочитати її офіційну документацію, щоб дізнатися більше. Дякуємо, що прочитали. Якщо у вас виникнуть проблеми, зв’яжіться з нами та залиште цінні коментарі.