Ubuntu запустить сервер Node.js і відкриє Chrome у режимі кіоску


1

Я б хотів, щоб комп'ютер негайно запустив додаток Node.js під час завантаження. Тоді я хотів би, щоб Chrome відкривався в режимі кіоску, але лише після запуску сервера. Дивлячись на переповнення стека Ubuntu, я знайшов спосіб виконати сценарій при запуску

Додавання рядка до хрону так:

@reboot / шлях / до / скрипту

виконає цей сценарій, коли комп'ютер завантажиться.

Я думав, що можу це зробити за допомогою .sh-скрипту, але я новачок у Linux. Якби я написав щось подібне:

node server.js
chromium-browser --kiosk http://example.com

Хіба команда Chrome-браузера не буде виконуватись до повного запуску сервера вузлів?

Відповіді:


1

Ви пробували це? Якщо так, то який результат?

Я б очікував, що якби ви спробували це, це не вдалося. Це тому, що процес node server.jsніколи не закінчується. Як правило, у цьому випадку ви б node server.js &відправили процес на другий план; однак це не означає, що сервер готовий.

Щоб насправді це знати, найкраще скористатись listen callbackдля виконання системної команди. Наприклад:

var http = require("http");

var srv = http.createServer(...);
srv.listen(8000, ExecuteChromium);

function ExecuteChromium() {
    exec("chromium-browser --kiosk http://example.com", function(error, stdout, stderr) {
        console.log("stdout: " + stdout);
        console.log("stderr: " + stderr);
        if (error !== null) {
            console.log("exec errror: " + error);
        }
    });
}

Примітка. Це не перевірено, як воно є, просто подивився на деякі документи відповідь ТА для виконання команди.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.