Come installare la piattaforma del carrello LiteCart su Ubuntu 16.04
LiteCart è una piattaforma di carrello degli acquisti gratuita e open source scritta in PHP, jQuery e HTML 5. È un software di e-commerce semplice, leggero e facile da usare
Redmine è uno strumento di gestione dei progetti basato sul Web gratuito e open source. È scritto in Ruby on Rails e supporta più server di database per l'archiviazione del database. È un'applicazione ricca di funzionalità che supporta più progetti, ACL basata sui ruoli e un sistema di tracciamento dei problemi. Dispone inoltre di supporto per grafici e calendari Gantt, gestione dei file, wiki di progetto e forum, oltre a molte altre funzionalità. Supporta sistemi di controllo versione come Git, SVN o CVS. È anche multilingue e supporta fino a 49 lingue.
Per questo tutorial, utilizzeremo 192.168.1.1
come indirizzo IP pubblico e redmine.example.com
come nome di dominio puntato verso l'istanza Vultr. Assicurati di sostituire tutte le occorrenze del nome di dominio e dell'indirizzo IP di esempio con quello effettivo.
Aggiorna il tuo sistema di base usando la guida Come aggiornare Ubuntu 16.04 . Dopo aver aggiornato il sistema, procedere con l'installazione delle dipendenze.
Redmine è scritto in Ruby on Rails, pertanto sarà necessario che Phusion Passenger si integri con il server Web Apache per servire l'applicazione.
Installa Apache.
sudo apt -y install apache2 apache2-dev libcurl4-openssl-dev
Per costruire Ruby e Passenger, avremo bisogno anche di alcuni strumenti di sviluppo. Installa gli strumenti richiesti.
sudo apt -y install imagemagick libmagickwand-dev git build-essential automake libgmp-dev
Redmine supporta più tipi di server di database come MySQL, PostgreSQL e MSSQL. In questo tutorial, useremo PostgreSQL per ospitare il server di database Redmine.
PostgreSQL è un sistema di database relazionale ad oggetti. Il repository Ubuntu predefinito contiene una vecchia versione di PostgreSQL, quindi aggiungi il repository PostgreSQL al sistema.
echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update
Installa il server di database PostgreSQL.
sudo apt -y install postgresql
Avviare il server PostgreSQL e abilitarlo ad avviarsi automaticamente all'avvio.
sudo systemctl start postgresql
sudo systemctl enable postgresql
Cambia la password per l'utente PostgreSQL predefinito.
sudo passwd postgres
Accedi come utente PostgreSQL.
sudo su - postgres
Crea un nuovo utente PostgreSQL per Redmine.
createuser redmine
È consentito utilizzare qualsiasi nome utente anziché redmine
. PostgreSQL fornisce la psql
shell per eseguire query sul database. Passa alla shell PostgreSQL.
psql
Impostare una password per l'utente appena creato per il database Redmine.
ALTER USER redmine WITH ENCRYPTED password 'DBPassword';
Sostituisci DBPassword
con una password sicura. Creare un nuovo database per l'installazione di Redmine.
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
Esci dalla psql
shell.
\q
Passa sudo
all'utente.
exit
Installa alcune dipendenze PostgreSQL necessarie.
sudo apt -y install libpqxx-dev protobuf-compiler
Installeremo l'ultima versione di Ruby usando RVM. Viene utilizzato per installare e gestire più versioni di Ruby.
Aggiungi il repository RVM.
sudo apt-add-repository -y ppa:rael-gc/rvm
sudo apt update
Installa RVM.
sudo apt -y install rvm
Poiché è necessario installare il sistema Ruby a livello, passeremo temporaneamente all'utente root.
sudo -i
Aggiorna le variabili di ambiente.
echo "source /etc/profile.d/rvm.sh" | tee -a /etc/profile
source /etc/profile.d/rvm.sh
Installa l'ultima versione di Ruby.
rvm install 2.5.1
Nota: se si utilizza una versione diversa di Ruby, assicurarsi di aggiornare il percorso Ruby di conseguenza.
Utilizzare la versione installata di Ruby.
rvm use 2.5.1 --default
Puoi verificarne la versione.
ruby -v
Vedrai un risultato simile.
root@vultr:~# ruby -v
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
Installa bundler
, che è il gestore delle dipendenze per l'applicazione Ruby.
gem install bundler
Ruby è ora installato. Prima di installare Redmine, dovremo installare Phusion Passenger.
Eseguire il comando seguente per installare Passenger.
gem install passenger
Installa il modulo Apache per Passenger.
passenger-install-apache2-module
Lo script di installazione ti farà alcune domande. Innanzitutto, ti fornirà informazioni sul processo di installazione. Quindi ti chiederà di selezionare la lingua che utilizzerai. Poiché la nostra applicazione è scritta in Ruby on Rails, seleziona Ruby dal menu e premi ENTERper procedere ulteriormente.
Which languages are you interested in?
Use <space> to select.
If the menu doesn't display correctly, press '!'
‣ ⬢ Ruby
⬢ Python
⬡ Node.js
⬡ Meteor
L'installer ora controllerà i requisiti. Il programma di installazione non incontrerà alcuna dipendenza mancante e procederà automaticamente alla compilazione e all'installazione del modulo.
Una volta installato il modulo, ti verrà chiesto di aggiungere il modulo al file di configurazione di Apache.
Almost there!
Please edit your Apache configuration file, and add these lines:
LoadModule passenger_module /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3
PassengerDefaultRuby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
</IfModule>
After you restart Apache, you are ready to deploy any number of web
applications on Apache, with a minimum amount of configuration!
Press ENTER when you are done editing.
Salteremo questo per ora e lo completeremo più avanti nel tutorial. Premere ENTERper saltare questo passaggio.
Infine, lo script del programma di installazione convaliderà l'installazione e verrà visualizzato un avviso che informa che il modulo Passenger non è specificato nella configurazione di Apache.
Validating installation...
* Checking whether this Passenger install is in PATH... ✓
* Checking whether there are no other Passenger installations... ✓
* Checking whether Apache is installed... ✓
* Checking whether the Passenger module is correctly configured in Apache... (!)
You did not specify 'LoadModule passenger_module' in any of your Apache
configuration files. Please paste the configuration snippet that this
installer printed earlier, into one of your Apache configuration files, such
as /etc/apache2/apache2.conf.
Detected 0 error(s), 1 warning(s).
Press ENTER to continue.
Ora che abbiamo installato il modulo Passenger per Apache, procedi con il download e l'installazione di Redmine. Passa sudo
nuovamente all'utente poiché non è necessario eseguire altri comandi utilizzando l' root
utente.
exit
Si consiglia di utilizzare un utente senza privilegi per eseguire l'applicazione per tenerla isolata dal resto del sistema. Crea un nuovo utente per Redmine e passa all'utente appena creato.
sudo adduser --disabled-password --gecos "Redmine User" redmine
sudo su - redmine
Scarica l'ultima versione di Redmine dalla pagina di download ufficiale di Redmine .
cd ~
wget http://www.redmine.org/releases/redmine-3.4.4.tar.gz
Estrarre l'archivio e rinominare la directory per comodità.
tar -xf redmine-*.tar.gz
mv redmine-*/ redmine/
Copia i file di configurazione di esempio nella posizione di produzione.
cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml
Apri il file di configurazione del database che abbiamo appena copiato per inserire i dettagli del database.
nano config/database.yml
Per impostazione predefinita, il file del database è configurato per MySQL. Trova le configurazioni per la produzione e lo sviluppo e verifica che utilizza l'adattatore MySQL. Commenta tutte queste righe.
#production:
# adapter: mysql2
# database: redmine
# host: localhost
# username: root
# password: ""
# encoding: utf8
#development:
# adapter: mysql2
# database: redmine_development
# host: localhost
# username: root
# password: ""
# encoding: utf8
#test:
# adapter: mysql2
# database: redmine_test
# host: localhost
# username: root
# password: ""
# encoding: utf8
Furthur, trova le righe che sono commentate, con production
configurazione per l' postgresql
adattatore. Rimuovi il commento da tali righe e aggiorna il nome del database e le credenziali dell'utente. Assicurati di utilizzare il rientro corretto, ovvero due spazi.
production:
adapter: postgresql
database: redmine
host: localhost
username: redmine
password: "DBPassword"
Configurare l'applicazione per utilizzare la configurazione PostgreSQL.
bundle config build.pg --with-pg-config=/usr/bin/pg_config
Installa le dipendenze richieste dall'applicazione.
bundle install --path vendor/bundle --without development test
Vedrai il seguente messaggio alla fine dell'installazione.
Installing roadie-rails 1.1.1
Bundle complete! 31 Gemfile dependencies, 55 gems now installed.
Gems in the groups development and test were not installed.
Bundled gems are installed into `./vendor/bundle`
Il comando seguente genera token segreti che vengono utilizzati per codificare i dati della sessione.
bundle exec rake generate_secret_token
Scrivi il database PostgreSQL.
RAILS_ENV=production bundle exec rake db:migrate
Eseguire il comando seguente, che scrive i dati predefiniti nel database PostgreSQL.
RAILS_ENV=production bundle exec rake redmine:load_default_data
Il comando sopra ti chiederà di scegliere la lingua predefinita da usare con l'applicazione. La scelta predefinita è inglese; scegli in base alle tue preferenze.
[redmine@vultr redmine]$ RAILS_ENV=production bundle exec rake redmine:load_default_data
Select language: ar, az, bg, bs, ca, cs, da, de, el, en, en-GB, es, es-PA, et, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sq, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en]
====================================
Default configuration data loaded.
L'installazione dell'applicazione Redmine è ora terminata. Modifica la proprietà e le autorizzazioni delle directory e dei file.
mkdir -p tmp tmp/pdf public/plugin_assets
chown -R redmine:redmine files log tmp public/plugin_assets
chmod -R 755 files log tmp public/plugin_assets
Abbiamo configurato tutto ciò di cui abbiamo bisogno dall'utente non privilegiato. Torna sudo
all'utente eseguendo su - <username>
.
Aggiungi il modulo Passenger per Apache nel file di configurazione di Apache. Questo caricherà automaticamente il modulo Passeggero.
echo "LoadModule passenger_module /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3/buildout/apache2/mod_passenger.so" | sudo tee -a /etc/apache2/apache2.conf
Nota: il percorso del modulo Passeggero può cambiare in caso di una nuova versione di Passeggero. Per trovare il percorso del modulo, utilizzare il sudo find / -name mod_passenger.so
comando
Crea un nuovo file host virtuale per la tua applicazione Redmine.
sudo nano /etc/apache2/sites-available/redmine.conf
Popolare il file con il seguente contenuto.
<VirtualHost *:80>
ServerName redmine.example.com
DocumentRoot /home/redmine/redmine/public
PassengerRoot /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3
PassengerDefaultRuby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
PassengerUser redmine
<Directory /home/redmine/redmine/public>
Allow from all
Options -MultiViews
Require all granted
</Directory>
</VirtualHost>
Assicurati di sostituire redmine.example.com
con il tuo vero nome di dominio. Inoltre, assicurarsi che il percorso verso PassengerRoot
e PassengerDefaultRuby
sia corretto. Il percorso dei file binari può cambiare quando è disponibile una nuova versione di Ruby o Passenger. Per trovare questi percorsi, eseguire il comando seguente.
passenger-config about ruby-command
Otterrai il seguente output.
user@vultr:~$ passenger-config about ruby-command
passenger-config was invoked through the following Ruby interpreter:
Command: /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
Version: ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
To use in Apache: PassengerRuby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
To use in Nginx : passenger_ruby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
To use with Standalone: /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3/bin/passenger start
## Notes for RVM users
Do you want to know which command to use for a different Ruby interpreter? 'rvm use' that Ruby interpreter, then re-run 'passenger-config about ruby-command'.
Una volta creato il file host virtuale. Attiva la configurazione.
sudo a2ensite redmine
Riavvia il server Web Apache.
sudo systemctl restart apache2
Ora puoi accedere alla tua interfaccia di Redmine su http://redmine.example.com
. Accedi con il nome utente admin
e la password admin
. Al tuo primo accesso, Redmine ti chiederà di aggiornare la password.
Poiché la nostra installazione Redmine è su un server pubblico, si consiglia di utilizzare SSL per proteggere lo scambio di dati dal server.
Aggiungi il repository Certbot.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Installa Certbot, che è l'applicazione client per Let's Encrypt CA.
sudo apt -y install certbot
Nota: per ottenere certificati da Let's Encrypt CA, il dominio per il quale devono essere generati i certificati deve essere puntato verso il server. In caso contrario, apportare le modifiche necessarie ai record DNS del dominio e attendere la propagazione del DNS prima di effettuare nuovamente la richiesta di certificato. Certbot controlla l'autorità di dominio prima di fornire i certificati.
Genera i certificati SSL.
sudo certbot certonly --webroot -w /home/redmine/redmine/public -d redmine.example.com
È probabile che i certificati generati siano archiviati in /etc/letsencrypt/live/redmine.example.com/
. Il certificato SSL verrà archiviato come cert.pem
e la chiave privata verrà archiviata come privkey.pem
.
Let's Encrypt certificati scadranno tra 90 giorni, quindi si consiglia di impostare il rinnovo automatico dei certificati utilizzando i processi Cron.
Aprire il file di lavoro Cron per l' root
utente.
sudo crontab -e
Aggiungi la seguente riga alla fine del file.
30 5 * * * /usr/bin/certbot renew --quiet
Il precedente lavoro Cron verrà eseguito ogni giorno alle 5:30. Se il certificato è in scadenza, verrà automaticamente rinnovato.
Abilita il modulo SSL per Apache.
sudo a2enmod ssl
Modifica il file host virtuale che abbiamo creato in precedenza per Redmine.
sudo nano /etc/apache2/sites-available/redmine.conf
Modificare il file host virtuale in modo che sia simile al seguente.
<VirtualHost *:80>
ServerName redmine.example.com
Redirect permanent / https://redmine.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName redmine.example.com
DocumentRoot "/home/redmine/redmine/public"
<Directory "/home/redmine/redmine/public">
Options None
Require all granted
</Directory>
PassengerAppEnv production
PassengerRoot /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3
PassengerDefaultRuby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
PassengerUser redmine
PassengerHighPerformance on
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/redmine.example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/redmine.example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/redmine.example.com/chain.pem
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
<IfModule headers_module>
Header always edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains"
</IfModule>
</VirtualHost>
Salvare il file ed uscire dall'editor.
Riavvia Apache per rendere effettive le modifiche.
sudo systemctl restart apache2
Ora puoi accedere a Redmine HTTPS
all'indirizzo https://redmine.example.com
.
Congratulazioni, hai installato con successo Redmine sulla tua istanza di Ubuntu 16.04. Inizia a sviluppare il tuo progetto creando o importando il tuo progetto.
LiteCart è una piattaforma di carrello degli acquisti gratuita e open source scritta in PHP, jQuery e HTML 5. È un software di e-commerce semplice, leggero e facile da usare
NFS è un file system basato su rete che consente ai computer di accedere ai file attraverso una rete di computer. Questa guida spiega come esporre le cartelle su NF
Introduzione Durante questo tutorial imparerai come configurare un livello base di sicurezza su una nuovissima macchina virtuale Vultr VC2 che esegue Ubunt
McMyAdmin è un pannello di controllo del server Minecraft utilizzato per amministrare il tuo server. Sebbene McMyAdmin sia gratuito, ci sono più edizioni, alcune delle quali sono pai
TeamTalk è un sistema di conferenza che consente agli utenti di avere conversazioni audio / video di alta qualità, chat di testo, trasferire file e condividere schermate. Io
Usi un sistema diverso? Introduzione CyberPanel è uno dei primi pannelli di controllo sul mercato che è sia open source che utilizza OpenLiteSpeed. Che cosa
Introduzione Sensu è una soluzione di monitoraggio gratuita e open source che può essere utilizzata per monitorare server, applicazioni e vari servizi di sistema. Sensu i
PhpBB è un programma di bacheca open source. Questo articolo ti mostrerà come installare phpBB su un server web Apache su Ubuntu 16.04. Era scritto
Avere un solo utente, che è root, può essere pericoloso. Quindi risolviamolo. Vultr ci offre la libertà di fare ciò che vogliamo con i nostri utenti e i nostri server
Vultr offre diversi modi per accedere al tuo VPS per configurare, installare e utilizzare. Credenziali di accesso Le credenziali di accesso predefinite per il tuo VPS ar
Usi un sistema diverso? Fuel CMS è un sistema di gestione dei contenuti basato su CodeIgniter. Il suo codice sorgente è ospitato su GitHub. Questa guida ti mostrerà come t
Usi un sistema diverso? Couch CMS è un sistema di gestione dei contenuti (CMS) semplice e flessibile, gratuito e open source che consente ai web designer di progettare
Golang è un linguaggio di programmazione sviluppato da Google. Grazie alla sua versatilità, semplicità e affidabilità, Golang è diventato uno dei più popolari
Usi un sistema diverso? Apache OpenMeetings è unapplicazione per conferenze Web open source. È scritto in Java e supporta più server di database. io
IRC è popolare tra gli sviluppatori e gli utenti di software open source. Uno degli svantaggi di IRC è quando non sei in linea, potresti perdere Importan
Luso di un utente sudo per accedere a un server ed eseguire comandi a livello di root è una pratica molto comune tra Linux e Unix Systems Administrator. Luso di un sud
Usando un sistema diverso? RabbitMQ è un broker di messaggi open source ampiamente utilizzato scritto nel linguaggio di programmazione Erlang. Come middleware orientato ai messaggi
Usi un sistema diverso? TLS 1.3 è una versione del protocollo TLS (Transport Layer Security) che è stato pubblicato nel 2018 come standard proposto in RFC 8446
Questo articolo ti insegnerà come impostare una prigione chroot su Debian. Presumo che tu stia usando Debian 7.x. Se usi Debian 6 o 8, questo potrebbe funzionare, bu
Introduzione Un modo semplice per configurare un server VPN su Debian è con PiVPN. PiVPN è un programma di installazione e wrapper per OpenVPN. Crea semplici comandi per te t
Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane
ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.
Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+
Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.
Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più
13 strumenti commerciali per l'estrazione dei dati dai Big Data
Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true
Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.
Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1
L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.