Как да инсталирате Microweber на CentOS 7
Използване на различна система? Microweber е CMS и онлайн магазин с отворен код за плъзгане и пускане. Изходният код на Microweber се хоства на GitHub. Това ръководство ще ви покаже
Apache Zeppelin е уеб-базиран бележник с отворен код и инструмент за сътрудничество за интерактивно поглъщане на данни, откриване, анализ и визуализация. Zeppelin поддържа повече от 20 езика, включително Apache Spark, SQL, R, Elasticsearch и много други. Apache Zeppelin ви позволява да създавате красиви документи, управлявани от данни, и да виждате резултатите от вашите анализи.
За този урок ще използваме zeppelin.example.com
като име на домейн, насочено към екземпляра Vultr. Моля, не забравяйте да замените всички срещания на примерното име на домейн с действителното.
Актуализирайте базовата си система с помощта на ръководството Как да актуализирате Ubuntu 16.04 . След като вашата система бъде актуализирана, продължете да инсталирате Java.
Apache Zeppelin е написан на Java, така че изисква JDK, за да работи. Добавете Ubuntu хранилище за Oracle Java 8.
sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update
Инсталирайте Oracle Java.
sudo apt -y install oracle-java8-installer
Проверете неговата версия.
java -version
Ще видите следния изход.
user@vultr:~$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
Задайте пътя по подразбиране за Java, като инсталирате следния пакет.
sudo apt -y install oracle-java8-set-default
Можете да проверите дали JAVA_HOME
е зададено, като стартирате.
echo $JAVA_HOME
Ще видиш.
user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle
Ако изобщо не виждате изход, ще трябва да излезете от текущата обвивка и да влезете отново.
Apache Zeppelin доставя всички зависимости заедно с двоичните файлове, така че не е необходимо да инсталираме нищо друго освен Java. Изтеглете двоичния файл на Zeppelin във вашата система. Винаги можете да намерите най-новата версия на приложението на страницата за изтегляне на Zeppelin .
wget http://www-us.apache.org/dist/zeppelin/zeppelin-0.7.3/zeppelin-0.7.3-bin-all.tgz
Разархивирайте архива.
sudo tar xf zeppelin-*-bin-all.tgz -C /opt
Горната команда ще извлече архива в /opt/zeppelin-0.7.3-bin-all
. Преименувайте директорията за удобство.
sudo mv /opt/zeppelin-*-bin-all /opt/zeppelin
Apache Zeppelin вече е инсталиран. Можете веднага да стартирате приложението, но то няма да бъде достъпно за вас, тъй като слуша localhost
само. Ще конфигурираме Apache Zeppelin като услуга. Ние също така ще конфигурираме Nginx като обратен прокси.
В тази стъпка ще настроим файл Systemd за приложението Zeppelin. Това ще гарантира, че процесът на кандидатстване се стартира автоматично при рестартиране на системата и повреди.
От съображения за сигурност създайте непривилегирован потребител за стартиране на процеса Zeppelin.
sudo useradd -d /opt/zeppelin -s /bin/false zeppelin
Предоставете собствеността върху файловете на новосъздадения потребител на Zeppelin.
sudo chown -R zeppelin:zeppelin /opt/zeppelin
Създайте нов файл за сервизна единица на Systemd.
sudo nano /etc/systemd/system/zeppelin.service
Попълнете файла със следното.
[Unit]
Description=Zeppelin service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/opt/zeppelin/bin/zeppelin-daemon.sh start
ExecStop=/opt/zeppelin/bin/zeppelin-daemon.sh stop
ExecReload=/opt/zeppelin/bin/zeppelin-daemon.sh reload
User=zeppelin
Group=zeppelin
Restart=always
[Install]
WantedBy=multi-user.target
Стартирайте приложението.
sudo systemctl start zeppelin
Активирайте услугата Zeppelin да стартира автоматично при стартиране.
sudo systemctl enable zeppelin
За да сте сигурни, че услугата работи, можете да изпълните следното.
sudo systemctl status zeppelin
По подразбиране сървърът Zeppelin слуша localhost
на порт 8080
. Ще използваме Nginx като обратен прокси, така че приложението да може да бъде достъпно чрез стандартни HTTP
и HTTPS
портове. Ние също така ще конфигурираме Nginx да използва SSL, генериран с безплатен SSL CA Let's Encrypt.
Инсталирайте Nginx.
sudo apt -y install nginx
Стартирайте Nginx и го активирайте да стартира автоматично при стартиране.
sudo systemctl start nginx
sudo systemctl enable nginx
Добавете хранилището на Certbot.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Инсталирайте Certbot, което е клиентското приложение за Let's Encrypt CA.
sudo apt -y install certbot
Забележка : За да получите сертификати от Let's Encrypt CA, домейнът, за който трябва да се генерират сертификатите, трябва да бъде насочен към сървъра. Ако не, направете необходимите промени в DNS записите на домейна и изчакайте DNS да се разпространи, преди да направите отново заявка за сертификат. Certbot проверява авторитета на домейна, преди да предостави сертификатите.
Генерирайте SSL сертификати.
sudo certbot certonly --webroot -w /var/www/html -d zeppelin.example.com
Генерираните сертификати вероятно ще се съхраняват в /etc/letsencrypt/live/zeppelin.example.com/
. SSL сертификатът ще се съхранява като, fullchain.pem
а частният ключ ще се съхранява като privkey.pem
.
Срокът на валидност на сертификатите Let's Encrypt изтича след 90 дни, поради което се препоръчва да настроите автоматично подновяване на сертификатите с помощта на задания на Cron.
Отворете файла за задание на cron.
sudo crontab -e
Добавете следния ред в края на файла.
30 5 * * * /usr/bin/certbot renew --quiet
Горната задача на cron ще се изпълнява всеки ден в 5:30 сутринта. Ако сертификатът изтича, той автоматично ще бъде подновен.
Създайте нов сървърен блок файл за сайта на Zeppelin.
sudo nano /etc/nginx/sites-available/zeppelin
Попълнете файла.
upstream zeppelin {
server 127.0.0.1:8080;
}
server {
listen 80;
server_name zeppelin.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name zeppelin.example.com;
ssl_certificate /etc/letsencrypt/live/zeppelin.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/zeppelin.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/zeppelin.access.log;
location / {
proxy_pass http://zeppelin;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
}
location /ws {
proxy_pass http://zeppelin/ws;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
proxy_read_timeout 86400;
}
}
Активирайте конфигурационния файл.
sudo ln -s /etc/nginx/sites-available/zeppelin /etc/nginx/sites-enabled/zeppelin
Рестартирайте Nginx, за да могат промените да влязат в сила.
sudo systemctl restart nginx zeppelin
Zeppelin вече е достъпен на следния адрес.
https://zeppelin.example.com
По подразбиране няма активирано удостоверяване, така че можете да използвате приложението директно.
Тъй като приложението е достъпно за всички, бележниците, които създавате, също са достъпни за всеки. Много е важно да деактивирате анонимния достъп и да активирате удостоверяване, така че само удостоверените потребители да имат достъп до приложението.
За да деактивирате анонимен достъп по подразбиране, копирайте шаблона на конфигурационния файл в неговото местоположение на живо.
cd /opt/zeppelin
sudo cp conf/zeppelin-site.xml.template conf/zeppelin-site.xml
Редактирайте конфигурационния файл.
sudo nano conf/zeppelin-site.xml
Намерете следните редове във файла.
<property>
<name>zeppelin.anonymous.allowed</name>
<value>true</value>
Променете стойността на, за false
да деактивирате анонимния достъп.
След като деактивирахме анонимния достъп, трябва да активираме някакъв вид механизъм за удостоверяване, така че привилегированите потребители да могат да влизат. Apache Zeppelin използва удостоверяване на Apache Shiro. Копирайте конфигурационния файл на Shiro.
sudo cp conf/shiro.ini.template conf/shiro.ini
Редактирайте конфигурационния файл.
sudo nano conf/shiro.ini
Намерете следните редове във файла.
[users]
admin = password1, admin
user1 = password2, role1, role2
user2 = password3, role3
user3 = password4, role2
Списъкът съдържа потребителско име, парола и роли на потребителите. Засега ще използваме само admin
и user1
. Променете паролата на admin
и user1
и деактивирайте другите потребители, като ги коментирате. Можете също да промените потребителското име и ролите на потребителите. За да научите повече за потребителите и ролите на Apache Shiro, прочетете ръководството за оторизация на Shiro .
След като промените паролите, кодовият блок трябва да хареса това.
[users]
admin = StrongPassword, admin
user1 = UserPassword, role1, role2
# user2 = password3, role3
# user3 = password4, role2
Сега рестартирайте Zeppelin, за да приложите промените.
sudo systemctl restart zeppelin
Ще видите, че удостоверяването е активирано и ще можете да влезете с потребителското име и паролата, зададени в конфигурационния файл на Shiro.
Използване на различна система? Microweber е CMS и онлайн магазин с отворен код за плъзгане и пускане. Изходният код на Microweber се хоства на GitHub. Това ръководство ще ви покаже
Използване на различна система? Microweber е CMS и онлайн магазин с отворен код за плъзгане и пускане. Изходният код на Microweber се хоства на GitHub. Това ръководство ще ви покаже
Използване на различна система? osTicket е система за билети за поддръжка на клиенти с отворен код. Изходният код на osTicket се хоства публично на Github. В този урок
Използване на различна система? Sylius е модерна платформа за електронна търговия за PHP, базирана на Symfony Framework. Източникът на Sylius е в GitHub. Това ръководство ще wal
Cezerin е прогресивно уеб приложение за електронна търговия с отворен код, създадено с помощта на React и Node.js. В този урок ще научите как да разположите Cezerin за production
Използване на различна система? Apache OpenMeetings е приложение за уеб конференции с отворен код. Той е написан на Java и поддържа множество сървъри за бази данни. аз
Използване на различна система? Microweber е CMS и онлайн магазин с отворен код за плъзгане и пускане. Изходният код на Microweber се хоства на GitHub. Това ръководство ще ви покаже
Използване на различна система? Akaunting е безплатен, отворен код и онлайн счетоводен софтуер, предназначен за малки фирми и служители на свободна практика. Изградено е остроумно
Използване на различна система? Mailtrain е самостоятелно хоствано приложение за бюлетин с отворен код, изградено на Node.js и MySQL/MariaDB. Източникът на Mailtrains е в GitHub. ти
Използване на различна система? Akaunting е безплатен, отворен код и онлайн счетоводен софтуер, предназначен за малки фирми и служители на свободна практика. Изградено е остроумно
Въведение Този урок демонстрира OpenBSD като решение за електронна търговия, използващо PrestaShop и Apache. Apache е необходим, тъй като PrestaShop има сложен UR
Използване на различна система? Mailtrain е самостоятелно хоствано приложение за бюлетин с отворен код, изградено на Node.js и MySQL/MariaDB. Източникът на Mailtrains е в GitHub. ти
Използване на различна система? InvoicePlane е безплатно приложение за фактуриране с отворен код. Неговият изходен код може да бъде намерен в това хранилище на Github. Това ръководство
Използване на различна система? osTicket е система за билети за поддръжка на клиенти с отворен код. Изходният код на osTicket се хоства публично на Github. В този урок
Използване на различна система? Open Web Analytics (OWA) е програма за уеб анализ с отворен код, която може да се използва за проследяване и анализиране на начина, по който хората използват вашия уебсайт
Използване на различна система? Open Web Analytics (OWA) е програма за уеб анализ с отворен код, която може да се използва за проследяване и анализиране на начина, по който хората използват вашия уебсайт
Използване на различна система? Osclass е проект с отворен код, който ви позволява лесно да създадете сайт за обяви без никакви технически познания. Неговият източник
Използване на различна система? Osclass е проект с отворен код, който ви позволява лесно да създадете сайт за обяви без никакви технически познания. Неговият източник
Използване на различна система? Apache OpenMeetings е приложение за уеб конференции с отворен код. Той е написан на Java и поддържа множество сървъри за бази данни. аз
Използване на различна система? X-Cart е изключително гъвкава платформа за електронна търговия с отворен код с множество функции и интеграции. Изходният код на X-Cart е хост
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.
Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.
Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.
Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…
Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.
Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.
Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.
В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.
Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече