Návod na instalaci standardní vývojového prostředí pro vývojáře webů.
Provozujeme několik VPS pro hostování webů, jejichž základem je Linux s CentOS obsahujícím ISPConfig a měl jsem potřebu si podobné prostředí vytvořit na lokálním počítači. Důvodem je hlavně možnost experimentovat a zkoušet si upgradovat a instalovat další rozšíření v prostředí Linux, aniž by byl ohrožen provoz "živých webových prezentací". S příchodem Windows 10 Fall Creators Update přišla i podpora instalace Linuxu přímo do Windows, což je naprosto fantastická možnost, mít na počítači oba systémy. V tomto článku si ukážeme jak nainstalovat Linuxovou distribuci Debian na počítač s Windows 10 a současně jak čistý Linux nakonfigurovat tak, aby fungovalo prostředí ISPConfig včetně Apache, MySQL a PHP.
Instalujeme Linux na Windows 10
Nejdříve je nutné aktivovat ve Windows 10 prostředí Linux Subsystem, které vám umožní nainstalovat Linuxovou distribuci přímo z prostředí Windows Store.
Do vyhledávacího pole vedle tlačítka Start tedy zadejte následující text
Windows PowerShell
Windows vyhledá PowerShell a vy kliknete pravým tlačítkem myši a zvolíte Spustit jako Administrátor. Jakmile se PowerShell spustí zadejte..
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Tím se nainstaluje podpora Linux Subsystem a bude nutné restartovat počítač. Po uvedeném update stačí kliknout na Windows Store a vyhledat distribuci Linuxu, kterou chcete nainstalovat. V našem případě je to Linux v distribuci Debian - aktuálně ve verzi 9.
V tuto chvíli je možné spustit systém a zobrazí se nám klasický BASH systému Linux. Systém vás vyzve k vytvoření defaultního uživatele ve smyslu zadání jména a hesla.
Aby nebyl problém s oprávněním, použijeme sudo, případně se můžete zalogovat jako root prostřednitvím příkazu
sudu su
V první řade je vhodné updatovat a upgradovat systém. Update nastaví aktuální repository pro Linux a upgrade provede aktualizaci balíčků..
apt-get update apt-get upgrade
Doporučuji nainstalovat velmi populární file manager Midnight Commander příkazem
apt-get install mc
Instalace ISPConfig
Výhodou použití ISPConfigu je automatická instalace všech součástí jako je APACHE, PHP a MySQL. Stačí následující příkazy:
apt-get install -y unzip cd /tmp wget --no-check-certificate -O installer.tgz "https://github.com/servisys/ispconfig_setup/tarball/master" tar zxvf installer.tgz cd *ispconfig*
a spustíme samotnou instalaci ISPConfig systému...
bash install.sh
Následuje průvodce, který je poměrně jednoduchý a jasný. Samotná instalace může trvat i několi minut. Následuje hláška
Well done ISPConfig installed and configured correctly :D
V tuto chvíli by mělo být připraveno přihlášení do ISPConfigu na adrese https://localhost:8080/login/
Defaultní uživatelské jméno je admin a heslo admin.
Opakovaný start Apache
Při dalším spuštění Windows a následně aplikace Debian je nutné pro správnou funkčnost spustit příkaz pro spuštění APACHE.
service apache2 start
Také musíme spustit MySQL server.
service mysql start
Změny v ISPConfigu se provádí přes CRON joby, takže spustíme ještě službu CRONu.
service cron start
Pak je již z Windows dostupná adresa https://localhost:8080 s přihlášením do ISPConfigu.
Tento proces se zatím nedá efektivně automatizovat - tedy alespoň jsem zatím nenašel návod jak na to. Pokud by někdo věděl jak to nastavit, napište prosím do komentářů, rád vyzkouším a doplním tento návod.
Další služby systému
Stav dostupných služeb lze zjistit tímto příkazem:
service --status-all
Služba PHP 5.6
service php5.6-fpm start
Služba pro FTP přenos
service pure-ftpd-mysql start
Dávkové spuštění služeb
service php5.6-fpm start service mysql start service apache2 start service cron start service pure-ftpd-mysql start
Založení SITE v ISP Config
Windows Subsystem bohužel nemá ještě několik záležitostí dořešeno a proto při spouštění APACHE může dojít k hlášení notice. To způsobí nemožnost zapsat nastavení dané stránky přímo z ISPConfigu. Pro ukázku použiji vhost sobor pro doménu mojestranka.local..
/etc/apache2/sites-available/mojestranka.local.vhost Místo toho ISPC vytvoří soubor /etc/apache2/sites-available/mojestranka.local.vhost.err
a původní vhost nechá prázdný a nebo nezměněný. Toto se dá velmi jednoduše obejít tím, že "natvrdo" překopírujete / přepíšete /etc/apache2/sites-available/mojestranka.local.vhost.err na soubor /etc/apache2/sites-available/mojestranka.local.vhost.
Následně je nutné restartovat apache..
service apache2 restart
Při spouštění se zobrazí průběh, který by měl odhalit chyby, nicméně v mém případě se jednalo pouze o NOTICE, které nebrání ve spuštění APACHE.
Při vytváření SITE v ISPC se mi osvědčilo následující nastavení:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut cursus facilisis nibh eu imperdiet. Suspendisse ultricies ultricies orci. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Etiam ac mauris luctus odio pretium bibendum. Phasellus consequat nunc congue dui ultrices sodales. Vestibulum tincidunt, neque in tristique varius, nisi libero convallis risus, a viverra erat leo in ante. Fusce condimentum, est non rhoncus interdum, elit augue fermentum magna, eu aliquam est purus vitae eros.
Konfigurace APACHE
V souboru /etc/apache2/apache2.conf je aktuální konfigurace APACHE, která si dynamicky načítá další konfiguraci z *.conf souborů v /etc/apache2/sites-enabled.
Případné chyby monutoruje soubor /var/log/apache2/error.log
Konfigurace PHP 7 s podporou PDO
Pro připojení do MS SQL databáze je nutné nainstalovat freetds.
sudo apt-get install **php7.0**-sybase freetds-common libsybdb5
apache2ctl restart
Instalace PHP 5.6
apt-get install software-properties-common
apt-get install apt-transport-https lsb-release ca-certificates
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
apt-get update
aptitude install php5.6
Odinstalace a opětovná instalace Debian Linuxu WSL ve Windows 10
Celou instanci Linuxu je možné odinstalovat, pokud spustíte příkazový řádek Windows a zadáte:
debian clean