En este tutorial, explicaremos cómo instalar Publify en un VPS Ubuntu 14.04 con MariaDB, Puma y Nginx. Publify es un software de publicación web de código abierto simple pero con todas las funciones. Publify se basa en el marco Ruby on Rails y es el proyecto de código abierto de Rails más antiguo que existe. Esta guía también debería funcionar en otros sistemas Linux VPS, pero fue probada y escrita para Ubuntu 14.04 VPS.
Inicie sesión en su VPS a través de SSH
ssh user@vps
Actualice el sistema e instale los paquetes necesarios
[user]# sudo apt-get update && sudo apt-get -y upgrade [user]# sudo apt-get install software-properties-common imagemagick build-essential git openssl nano
Instalar 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
Cuando se complete la instalación, ejecute el siguiente comando para asegurar su instalación:
[user]# sudo mysql_secure_installation
A continuación, debemos crear una base de datos para nuestra instalación de 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
Publicar usuario
Cree un nuevo usuario del sistema para 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
Instalar Ruby usando RVM
Los siguientes comandos se ejecutan como usuario de publicación.
[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
Para comenzar a usar RVM, ejecute el siguiente comando:
[publify]# source ~/.rvm/scripts/rvm
Para verificar que todo se haya hecho correctamente, use el comando ruby --version
.
El resultado debe ser similar al siguiente:
[publify]# ruby --version ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]
Instalar Publicar
Clone la última versión de Publify desde github usando el siguiente comando:
[publify]# cd && git clone https://github.com/publify/publify.git
[publify]# git checkout v8.2.0
Copie base de datos.yml.mysql como base de datos.yml
[publify]# cp ~/publify/config/database.yml.mysql ~/publify/config/database.yml
Abra el database.yml
archivo y actualizar nombre de usuario/contraseña
[publify]# vim ~/publify/config/database.yml
production: login: &login adapter: mysql2 host: localhost username: publify password: publify_passwd
Cree un nuevo archivo de configuración de 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}
Instalar gemas
[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
Preparar la base de datos y compilar los activos
[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
Crear un script 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
Ahora puede iniciar su servicio de Publify con:
[publify]# sudo service publify start
Instalar y configurar Nginx
La última versión de Nginx 1.8 no está disponible a través de los repositorios predeterminados de Ubuntu, por lo que agregaremos el PPA "nginx/stable", actualizaremos el sistema e instalaremos el paquete nginx.
[user]$ sudo add-apt-repository ppa:nginx/stable [user]$ sudo apt-get update [user]$ sudo apt-get install nginx
Cree un nuevo bloque de servidor Nginx con el siguiente contenido
[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; } }
Active el bloqueo del servidor creando un enlace simbólico y reinicie Nginx:
[user]# sudo ln -s /etc/nginx/sites-available/publify.domain.com /etc/nginx/sites-enabled/publify.domain.com [user]# sudo service nginx restart
Eso es todo. Has instalado correctamente Publify en tu Ubuntu VPS. Para obtener más información sobre Publify, consulte el sitio web de Publify.
Por supuesto, no tiene que hacer nada de esto si utiliza uno de nuestros servicios de alojamiento VPS de Linux, en cuyo caso simplemente puede pedirle a nuestros administradores expertos de Linux que lo configuren por usted. Están disponibles las 24 horas del día, los 7 días de la semana y atenderán su solicitud de inmediato.
PD . Si te gustó esta publicación, compártela con tus amigos en las redes sociales usando los botones de la izquierda o simplemente deja una respuesta a continuación. Gracias.