Njengamanje kunamathuluzi amaningi wokuthatha amanothi, enye engihehile ngumthombo omusha, onamandla futhi ovulekile Amaphepha, okuyindlela ehlukile ekusetshenzisweni kobunikazi bale ndawo.
Yini amaphepha?
emsebenzini wamaphepha iyindlela evulekile yomthombo wokuthatha inothi, isekela i-Evernote, iMicrosoft OneNote neGoogle Keep.
emsebenzini wamaphepha ibhalwe ku-PHP, kusetshenziswa uhlaka I-Laravel 4. Yakhelwe phezu kwe- AngularJS y I-Bootstrap 3, kInikeza isikhombimsebenzisi esibonakalayo sesimanje sewebhu, kanye ne-API evulekile yokuhlanganiswa komuntu wesithathu.
Engxenyeni engemuva kokugcina igcina konke ku-database MySQL. Ngezidingo ezivamile (i-Linux, i-Apache, i-MySQL, i-PHP), emsebenzini wamaphepha Izokwazi ukusebenza hhayi kuphela kumaseva azinikele, kepha futhi nakumadivayisi we-NAS amancane naphakathi (i-Synology, i-QNAP, njll.).
Ungasihlola kanjani isibonakaliso se-Paperwork
Singavivinya idemo yamaPhepha ngokuthola izimo zomsebenzi ezenziwa online ezinikezwe Isivunguvungu y I-Cloudron. Ungazama Amaphepha eSandstorm (ngaphandle kokungena ngemvume) noma Amaphepha e-Cloudron (igama lomsebenzisi: cloudron, iphasiwedi: cloudron).
Njalo ebusuku ngo-3 ekuseni (i-CET), i-database iyalahlwa iphinde yenziwe kabusha, futhi kukhishwa izibuyekezo zakamuva kwi-GitHub.
Zizwe ukhululekile ukudala / ukuguqula / ukususa ama-akhawunti, izincwadi zokubhala kanye namanothi. Le demo ingasetshenziselwa ukuhlolwa okuqinile ngaphandle kwenkinga.
Izidingo zokufaka i-Paperwork
- php5
- mysql
- nginx, isibani ...
- i-curl
- nodejs
Ungayifaka kanjani i-Paperwork
Faka amaphepha ku-Ubuntu 14.10
Lokhu kuzokukhombisa igxathu negxathu ukuthi ungayifaka kanjani ifayela le- Iseva ye-LEMP namaphepha. Lo mhlahlandlela ubhalwe futhi wahlolwa ku-Ubuntu 14.10 ongasebenza nezinguqulo ezindala.
Faka ukuncika
apt-get update
apt-get install mysql-server php5-mysql nginx php5-fpm curl wget git php5-cli php5-gd php5-mcrypt nodejs nodejs-legacy
Uma uhlela ukusebenzisa i-MySQL, kunconywa ukuthi uyilungiselele ngokuphepha:
/usr/bin/mysql_secure_installation
Ukuze unike amandla i-mcrypt kumafayili wokumiswa kwe-PHP, uzodinga ukungeza okulandelayo ezansi kokucushwa kwe-php5-ehl ne-php5-fpm:
extension=mcrypt.so
vi /etc/php5/fpm/php.ini
vi /etc/php5/cli/php.ini
faka umqambi
curl -sS https://getcomposer.org/installer | php
run composer ngaphandle kokucacisa indlela
mv composer.phar /usr/local/bin/composer
Dala umkhombandlela ukuze ufake emsebenzini wamaphepha
mkdir /var/www/
cd /var/www/
Landa emsebenzini wamaphepha usebenzisa Git:
git clone https://github.com/twostairs/paperwork.git
Iya enkombeni engaphambili:
cd ./paperwork/frontend/
Qalisa "ukufaka umqambi" kanye / noma "isibuyekezo somqambi". Lokhu kuzofaka konke ukuncika okudingekayo.
composer install
Manje, kufanele ubeke imininingwane yakho ye-MySQL ku-frontend / app / config / database.php. Ngokufakwa kwendawo, i-database yamaphepha ingalungiswa ukuze isebenze nezilungiselelo ezizenzakalelayo:
DROP DATABASE IF EXISTS paperwork;
CREATE DATABASE IF NOT EXISTS paperwork DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON paperwork.* TO 'paperwork'@'localhost' IDENTIFIED BY 'paperwork' WITH GRANT OPTION;
FLUSH PRIVILEGES;
quit
Ngemuva kokuqedela lezi zinyathelo, qalisa imisebenzi yokufuduka, egcwala database:
php artisan migrate
Shintsha izimvume ze-Paperwork ku-directory yewebhu iye kumsebenzisi osebenzayo nginx:
chown www-data:www-data -R /var/www/
Hlela izilungiselelo zesayithi ezizenzakalelayo ukuze zifane: / etc / nginx / sites-available / default
server {
listen 80;
# listen 443 ssl;
root /var/www/paperwork/frontend/public;
index index.php index.html index.htm;
server_name example.com;
# server_name example.com;
# ssl_certificate /etc/nginx/ssl/server.crt;
# ssl_certificate_key /etc/nginx/ssl/server.key;
location / {
try_files $uri $uri/ /index.php;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}
# pass the PHP scripts to FastCGI server listening on the php-fpm socket
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Faka npm:
wget https://www.npmjs.org/install.sh
bash ./install.sh
Faka i-gulp ne-bower:
npm install -g gulp bower
Faka ukuncika kwephrojekthi kwephrojekthi
npm install
Faka ukuncika kwe-bower bese wenza imisebenzi ezenzakalelayo
bower install
gulp
Qala kabusha i-Nginx ne-php
service nginx restart
service php5-fpm restart
Singakwazi ukufinyelela localhost:8888
bese uqala ukujabulela emsebenzini wamaphepha
Faka amaphepha ku-Debian 7
Lokhu kuzokukhombisa igxathu negxathu ukuthi ungayifaka kanjani ifayela le- Iseva ye-LEMP namaphepha. Lo mhlahlandlela ubhalwe futhi wahlolwa ku-Debian 7 nawo ongasebenza ngezinguqulo ezindala.
Kufanele sengeze izindawo zokubuyela emuva, ezidingekayo ukufaka i-Node.js kufayela /etc/apt/source.list:
deb http://http.debian.net/debian wheezy-backports main
Faka ukuncika
apt-get update
apt-get install mysql-server php5-mysql nginx php5-fpm curl wget git php5-cli php5-gd php5-mcrypt nodejs nodejs-legacy
Uma uhlela ukusebenzisa i-MySQL, kunconywa ukuthi uyilungiselele ngokuphepha:
/usr/bin/mysql_secure_installation
Faka umqambi
curl -sS https://getcomposer.org/installer | php
run composer ngaphandle kokucacisa indlela
mv composer.phar /usr/local/bin/composer
Dala umkhombandlela ukuze ufake emsebenzini wamaphepha:
mkdir /var/www/
cd /var/www/
Landa emsebenzini wamaphepha usebenzisa Git:
git clone https://github.com/twostairs/paperwork.git
Iya enkombeni engaphambili:
cd ./paperwork/frontend/
Qalisa "ukufaka umqambi" kanye / noma "isibuyekezo somqambi". Lokhu kuzofaka ukuncika okudingekayo.
composer install
Kufanele sixhume ama-Paperwork kuseva yakho ye-SQL. Dala i- "database.json" bese ukopisha ifayela "default_database.json":
cp app/storage/config/default_database.json app/storage/config/database.json
Noma, faka iziqinisekiso zeseva yakho ye-SQL ku- "database.json", ngokufaka okulula kuseva yakho yangakini, singasungula i-database esebenza ngokuhlelwa okuzenzakalelayo:
DROP DATABASE IF EXISTS paperwork;
CREATE DATABASE IF NOT EXISTS paperwork DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON paperwork.* TO 'paperwork'@'localhost' IDENTIFIED BY 'paperwork' WITH GRANT OPTION;
FLUSH PRIVILEGES;
quit
Ngemuva kokuqedela lezi zinyathelo, qalisa imisebenzi yokufuduka, egcwala database:
php artisan migrate
Shintsha izimvume ze-Paperwork ku-directory yewebhu iye kumsebenzisi osebenzayo nginx:
chown www-data:www-data -R /var/www/
Hlela izilungiselelo zesayithi ezizenzakalelayo ukuze zifane: / etc / nginx / sites-available / default
server {
listen 80;
# listen 443 ssl;
root /var/www/paperwork/frontend/public;
index index.php index.html index.htm;
server_name example.com;
# server_name example.com;
# ssl_certificate /etc/nginx/ssl/server.crt;
# ssl_certificate_key /etc/nginx/ssl/server.key;
location / {
try_files $uri $uri/ /index.php;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}
# pass the PHP scripts to FastCGI server listening on the php-fpm socket
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
ukufaka npm
wget https://www.npmjs.org/install.sh
bash ./install.sh
faka i-gulp ne-bower
npm install -g gulp bower
Faka ukuncika okudingekayo kwe-npm kwephrojekthi
npm install
Faka ukuncika kwe-bower bese wenza imisebenzi edingekayo
bower install
gulp
Qala kabusha i-Nginx ne-php
service nginx restart
service php5-fpm restart
Buyekeza i-Paperwork, run (from / frontend)
sudo php artisan paperwork:update
Imibhalo yamaphepha
Imibhalo ye-API ingatholakala ku- amadokodo.amaphepha.apiary.io noma usebenzisa i-apiary.apib kusuka ku- okugcinwa ngokusemthethweni kwamaphepha. Izincwadi zisakhiwa, ngakho-ke kulindeleke ezinye izinguquko.
Nikela Emaphepheni
Ukufaka isandla emaphepheni ungasebenzisa okulandelayo git branch. Ngakho-ke ukuze ukhule, kuzofanela uqoqe indawo yokugcina ngaphakathi I-Github, bese uthola igatsha elisha. Qinisekisa izinguquko zegatsha bese ucindezela izibuyekezo kwigatsha elithuthukisayo.
Uma unentshisekelo kule phrojekthi futhi ufuna ukufaka isandla, ungaxhumana nonjiniyela marius@paperwork.rocks) noma i-Twitter (@devilx) -
Kukhona isiteshi se-IRC # iphephawork ku-freenode.net futhi kuneqembu i-gitter.