In diesem Tutorial erklären wir, wie man Publify auf einem Ubuntu 14.04 VPS mit MariaDB, Puma und Nginx installiert. Publify ist eine einfache, aber voll ausgestattete Open-Source-Web-Publishing-Software. Publify basiert auf dem Ruby on Rails-Framework und ist das älteste noch existierende Rails-Open-Source-Projekt. Diese Anleitung sollte auch auf anderen Linux-VPS-Systemen funktionieren, wurde aber für Ubuntu 14.04 VPS getestet und geschrieben.
Melden Sie sich über SSH bei Ihrem VPS an
ssh user@vps
Aktualisieren Sie das System und installieren Sie die erforderlichen Pakete
[user]# sudo apt-get update && sudo apt-get -y upgrade [user]# sudo apt-get install software-properties-common imagemagick build-essential git openssl nano
Installieren Sie 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
Führen Sie nach Abschluss der Installation den folgenden Befehl aus, um Ihre Installation zu sichern:
[user]# sudo mysql_secure_installation
Als nächstes müssen wir eine Datenbank für unsere Publify-Installation erstellen:
[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
Benutzer veröffentlichen
Erstellen Sie einen neuen Systembenutzer für 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
Ruby mit RVM installieren
Die folgenden Befehle werden als publify-Benutzer ausgeführt.
[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
Um mit der Verwendung von RVM zu beginnen, führen Sie den folgenden Befehl aus:
[publify]# source ~/.rvm/scripts/rvm
Um zu überprüfen, ob alles richtig gemacht wurde, verwenden Sie den Befehl ruby --version
.
Die Ausgabe sollte ungefähr so aussehen:
[publify]# ruby --version ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]
Installieren Sie Publify
Klonen Sie die neueste Version von Publify von Github mit dem folgenden Befehl:
[publify]# cd && git clone https://github.com/publify/publify.git
[publify]# git checkout v8.2.0
Kopieren Sie database.yml.mysql als database.yml
[publify]# cp ~/publify/config/database.yml.mysql ~/publify/config/database.yml
Öffnen Sie die database.yml
Datei und Benutzername/Passwort aktualisieren
[publify]# vim ~/publify/config/database.yml
production: login: &login adapter: mysql2 host: localhost username: publify password: publify_passwd
Erstellen Sie eine neue Puma-Konfigurationsdatei.
[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}
Gems installieren
[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
Bereiten Sie die Datenbank vor und kompilieren Sie die Assets
[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
Erstellen Sie ein Upstart-Skript
[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
Sie können Ihren Publify-Dienst jetzt mit :
starten[publify]# sudo service publify start
Nginx installieren und konfigurieren
Die neueste Version von Nginx 1.8 ist nicht über die standardmäßigen Ubuntu-Repositories verfügbar, daher werden wir das PPA „nginx/stable“ hinzufügen, das System aktualisieren und das nginx-Paket installieren.
[user]$ sudo add-apt-repository ppa:nginx/stable [user]$ sudo apt-get update [user]$ sudo apt-get install nginx
Erstellen Sie einen neuen Nginx-Serverblock mit folgendem Inhalt
[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; } }
Aktivieren Sie den Serverblock, indem Sie einen symbolischen Link erstellen und Nginx neu starten:
[user]# sudo ln -s /etc/nginx/sites-available/publify.domain.com /etc/nginx/sites-enabled/publify.domain.com [user]# sudo service nginx restart
Das ist es. Sie haben Publify erfolgreich auf Ihrem Ubuntu VPS installiert. Weitere Informationen zu Publify finden Sie auf der Publify-Website.
Natürlich müssen Sie nichts davon tun, wenn Sie einen unserer Linux-VPS-Hosting-Dienste nutzen. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, dies für Sie einzurichten. Sie sind rund um die Uhr erreichbar und kümmern sich umgehend um Ihr Anliegen.
PS . Wenn Ihnen dieser Beitrag gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen auf der linken Seite oder hinterlassen Sie einfach unten eine Antwort. Danke.