V tomto tutoriálu vysvětlíme, jak nainstalovat Publify na Ubuntu 14.04 VPS s MariaDB, Puma a Nginx. Publify je jednoduchý, ale plně vybavený software pro publikování na webu s otevřeným zdrojovým kódem. Publify je postaveno na frameworku Ruby on Rails a je to nejstarší otevřený projekt Rails na světě. Tato příručka by měla fungovat i na jiných systémech Linux VPS, ale byla testována a napsána pro Ubuntu 14.04 VPS.
Přihlaste se ke svému VPS přes SSH
ssh user@vps
Aktualizujte systém a nainstalujte potřebné balíčky
[user]# sudo apt-get update && sudo apt-get -y upgrade [user]# sudo apt-get install software-properties-common imagemagick build-essential git openssl nano
Nainstalujte MariaDB 10.1
[user]# sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db [user]# sudo add-apt-repository 'deb [arch=amd64,i386] http://mirrors.accretive-networks.net/mariadb/repo/10.1/ubuntu trusty main' [user]# sudo apt-get update [user]# sudo apt-get install mariadb-server libmariadbclient-dev
Po dokončení instalace spusťte následující příkaz pro zabezpečení instalace:
[user]# sudo mysql_secure_installation
Dále musíme vytvořit databázi pro naši instalaci Publify:
[user]# mysql -uroot -p MariaDB [(none)]> CREATE DATABASE publify CHARACTER SET utf8; MariaDB [(none)]> GRANT ALL PRIVILEGES ON publify.* TO 'publify'@'localhost' IDENTIFIED BY 'publify_passwd'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> \q
Publikovat uživatele
Vytvořte nového uživatele systému pro Publify.
[user]# sudo adduser --home /opt/publify --shell /bin/bash --gecos 'Publify publishing software' publify [user]# sudo install -d -m 755 -o publify -g publify /opt/publify [user]# sudo usermod -a -G sudo publify [user]# sudo su - publify
Nainstalujte Ruby pomocí RVM
Následující příkazy jsou spouštěny jako publify user.
[publify]# cd [publify]# curl -sSL https://rvm.io/mpapis.asc | gpg --import - [publify]# curl -sSL https://get.rvm.io | bash -s stable --ruby [publify]# rvm install ruby-2.1.5
Chcete-li začít používat RVM, spusťte následující příkaz:
[publify]# source ~/.rvm/scripts/rvm
Pro ověření, že je vše provedeno správně, použijte příkaz ruby --version
.
Výstup by měl být podobný následujícímu:
[publify]# ruby --version ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]
Instalovat Publify
Naklonujte nejnovější vydání Publify z githubu pomocí následujícího příkazu:
[publify]# cd && git clone https://github.com/publify/publify.git
[publify]# git checkout v8.2.0
Zkopírujte database.yml.mysql jako database.yml
[publify]# cp ~/publify/config/database.yml.mysql ~/publify/config/database.yml
Otevřete database.yml
soubor a aktualizujte uživatelské jméno/heslo
[publify]# vim ~/publify/config/database.yml
production: login: &login adapter: mysql2 host: localhost username: publify password: publify_passwd
Vytvořte nový konfigurační soubor Puma.
[publify]# nano ~/publify/config/puma.rb
#!/usr/bin/env puma application_path = '/opt/publify/publify' directory application_path environment 'production' daemonize true pidfile "#{application_path}/tmp/pids/puma.pid" state_path "#{application_path}/tmp/pids/puma.state" stdout_redirect "#{application_path}/log/puma.stdout.log", "#{application_path}/log/puma.stderr.log" bind "unix://#{application_path}/tmp/sockets/publify.sock"
[publify]# mkdir -p ~/publify/tmp/{pids,log,sockets}
Nainstalujte Gems
[publify]# cd ~/publify [publify]# echo "gem 'puma'" >> Gemfile [publify]# echo "gem: --no-ri --no-rdoc" >> ~/.gemrc [publify]# RAILS_ENV=production bundle install --without development test postgresql sqlite
Připravte databázi a zkompilujte aktiva
[publify]# RAILS_ENV=production rake db:setup [publify]# RAILS_ENV=production rake db:migrate [publify]# RAILS_ENV=production rake db:seed [publify]# RAILS_ENV=production rake assets:precompile
Vytvořte skript Upstart
[publify]# sudo nano /etc/init/publify.conf
description "Puma Publify Service" start on filesystem or runlevel [2345] stop on runlevel [!2345] setuid publify setgid publify respawn respawn limit 3 30 script exec /bin/bash << EOT source /opt/publify/.rvm/scripts/rvm cd /opt/publify/publify exec puma -C config/puma.rb EOT end script
Nyní můžete spustit službu Publify pomocí :
[publify]# sudo service publify start
Nainstalujte a nakonfigurujte Nginx
Nejnovější verze Nginx 1.8 není dostupná prostřednictvím výchozích repozitářů Ubuntu, takže přidáme „nginx/stable“ PPA, aktualizujeme systém a nainstalujeme balíček nginx.
[user]$ sudo add-apt-repository ppa:nginx/stable [user]$ sudo apt-get update [user]$ sudo apt-get install nginx
Vytvořte nový blok serveru Nginx s následujícím obsahem
[publify]# sudo nano /etc/nginx/sites-available/publify.domain.com
upstream publify { server unix:/opt/publify/publify/tmp/sockets/publify.sock; } server { server_name publify.domain.com; root /opt/publify/publify; location / { try_files $uri @ruby; } location @ruby { 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_redirect off; proxy_read_timeout 300; proxy_pass http://publify; } }
Aktivujte blok serveru vytvořením symbolického odkazu a restartujte Nginx:
[user]# sudo ln -s /etc/nginx/sites-available/publify.domain.com /etc/nginx/sites-enabled/publify.domain.com [user]# sudo service nginx restart
A je to. Úspěšně jste nainstalovali Publify na svůj Ubuntu VPS. Další informace o Publify naleznete na webu Publify.
Samozřejmě nemusíte nic z toho dělat, pokud používáte některou z našich hostingových služeb Linux VPS, v takovém případě můžete jednoduše požádat naše zkušené administrátory Linuxu, aby vám to nastavili. Jsou k dispozici 24×7 a okamžitě se postarají o váš požadavek.
PS . Pokud se vám tento příspěvek líbil, sdílejte jej se svými přáteli na sociálních sítích pomocí tlačítek vlevo nebo jednoduše zanechte odpověď níže. Děkuji.