Difference between pages "Product Opener/Installation/Debian or Ubuntu" and "Restaurants/Fast Food"

From Open Food Facts wiki
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
Also see [[Product Opener Installation]]
+
This project aims to collect information about Fast Food Products. Most of Fast Food products don't have a barcode. This page aims to find whether the information is published in bulk online (and what is published) so that we can add it to OpenFoodFacts.
  
This page lists all the steps necessary to install Product Opener on Debian, including a development environment.
+
=== A&W Restaurants ===
 +
=== Arby's ===
 +
=== Bojangles' ===
 +
=== Brioche Dorée ===
 +
=== Burger King ===
 +
=== Café de Coral ===
 +
=== Carl's Jr. ===
 +
=== Charley's Grilled Subs ===
 +
=== Checkers ===
 +
=== Rally's ===
 +
=== Chester's International ===
 +
===Chick-fil-A ===
 +
=== Chicken Cottage ===
 +
=== Chicken Delight ===
 +
<!--*[[Chicken Express === not INTL-->
 +
=== Chicken Licken (restaurant)|Chicken Licken ===
 +
=== Chipotle Mexican Grill ===
 +
=== Chowking ===
 +
=== Church's Chicken ==={{\}} [[Texas Chicken ===
 +
<!--*[[Cook Out (restaurant)|Cook Out === not INTL-->
 +
<!--*[[Culver's === not INTL-->
 +
=== Dairy Queen ===
 +
<!--*[[Del Taco === not INTL-->
 +
=== Dunkin' Donuts ===
 +
=== El Pollo Loco ===
 +
=== Fatburger ===
 +
=== Graceland ===
 +
<!--*[[Firehouse Subs === not INTL, PR is part of USA-->
 +
=== Five Guys ===
 +
<!--*[[Guthrie's === not INTL-->
 +
=== Hardee's ==={{\}} [[Red Burrito ===
 +
=== Hesburger ===
 +
<!--*[[In-N-Out Burger === not INTL-->
 +
=== Jack in the Box ===
 +
=== Jollibee ===
 +
=== Kenny Rogers Roasters ===
 +
=== KFC ===
 +
=== Krystal (restaurant)|Krystal ===
 +
=== Kyochon ===
 +
=== Long John Silver's ===
 +
=== Lotteria ===
 +
=== Maoz Vegetarian ===
 +
=== Marrybrown ===
 +
=== McDonald's ===
 +
=== Moe's Southwest Grill ===
  
All instructions below are for user "stephane", please use your own name. :-)
+
=== MOS Burger ===
 
+
=== Nando's ===
== Open Food Facts test / development server ==
+
=== Nathan's Famous ===
 
+
=== New York Fries ===
OFF test / development server is a small dedicated server ("kimsufi 2G", the cheap sub-brand of OVH).
+
=== Noble Roman's ===
 
+
=== Panda Express ===
* Linux ks3095298.kimsufi.com 3.10.23-xxxx-std-ipv6-64 #1 SMP Tue Mar 18 14:48:24 CET 2014 x86_64 GNU/Linux
+
=== Paul (bakery)|Paul ===
* CPU: Intel(R) Atom(TM) CPU 230 @ 1.60GHz - Cores: 2 - Cache: 512KB
+
=== Pizza Hut ===
* RAM: 2 Gb
+
=== Pollo Tropical ===
* Disk: 1 Tb
+
=== Popeyes Chicken & Biscuits ===
 
+
=== Quick (restaurant chain)|Quick ===
== Debian install ==
+
=== Quiznos ===
 
+
=== Raising Cane's Chicken Fingers ===
Fresh Debian install with OVH / kimsufi install process:
+
=== Red Rooster ===
 
+
=== Roy Rogers Restaurants ===
* Step 1:
+
=== Smoothie King ===<!--
** OS - Type: Basic
+
=== Sonic Drive-In === DO NOT ADD, IT'S ONLY IN THE USA, NOT INTL -->
** Debian 7.5 stable (Wheezy) - debian 7 - 64 bits
+
=== Subway (restaurant)|Subway ===
* Step 3: Partitions
+
=== Taco Bell ===
** Default:
+
=== Taco Bueno ===
*** / ext4 20 Gb
+
=== Taco Cabana ===
*** /home/ ext4 979.5 Gb
+
=== Taco del Mar ===
*** swap 1 x 512 Mb
+
=== Taco John's ===
 
+
=== Taco Mayo ===
== DNS ==
+
=== Taco Tico ===
 
+
=== Taco Time ===
ks3095298.kimsufi.com IP address: 94.23.195.82
+
=== Tastee-Freez ===
 
+
=== Tim Hortons ===
Create 2 A records in the DNS zone of the domain you want to use:
+
=== Togo's ===
* openfoodfacts.ovh 94.23.195.82
+
=== Vapiano ===
* *.openfoodfacts.ovh 94.23.195.82
+
=== Wendy's ===
 
+
=== Wendy's Supa Sundaes ===
== Install ==
+
=== Whataburger ===
 
+
=== White Castle (restaurant)|White Castle ===
=== Update Debian ===
+
=== White Spot ===
 
+
=== Wimpy (restaurant)|Wimpy ===
Usually done by OVH Debian install:
+
=== Wingstop ===
 
+
[[fr:Projet:Restauration Rapide]]
<pre>
 
apt-get update
 
apt-get upgrade
 
</pre>
 
 
 
=== Security ===
 
 
 
Install fail2ban and sudo:
 
 
 
<pre>
 
apt-get install fail2ban
 
apt-get install sudo
 
</pre>
 
 
 
Create an user and give it sudo access:
 
 
 
<pre>
 
adduser stephane
 
adduser stephane sudo
 
</pre>
 
 
 
 
 
=== Install software used by Product Opener ===
 
 
 
<pre>
 
apt-get install mongodb
 
 
 
apt-get install memcached
 
 
 
apt-get install imagemagick
 
 
 
apt-get install tesseract-ocr
 
apt-get install tesseract-ocr-fra
 
 
 
apt-get install exim4
 
dpkg-reconfigure exim4-config
 
- Internet Site mail is sent by smtp 
 
- 127.0.0.1
 
 
 
apt-get install geoip-bin geoip-database
 
</pre>
 
 
 
=== Install libraries used by Product Opener ===
 
 
 
<pre>
 
apt-get install zlib1g-dev
 
</pre>
 
 
 
 
 
=== Install development tools ===
 
 
 
Note: the Product Opener code is currently on a private bitbucket.org repository and is in the process of being made publicly available (open source). If you want to help us to clean / document Product Opener to open it, request access to the bitbucket repository: stephane@openfoodfacts.org
 
 
 
<pre>
 
apt-get install build-essential
 
apt-get install git
 
 
 
git clone https://stephane@bitbucket.org/openfoodfacts/product-opener.git
 
</pre>
 
 
 
(get the link for your user on bitbucket.org)
 
 
 
 
 
=== Apache 2.2 + mod_perl: Product Opener backend ===
 
 
 
==== Build ====
 
 
 
<pre>
 
apt-get install libperl-dev
 
 
 
cd /home/stephane
 
mkdir src
 
cd src
 
wget http://apache.crihan.fr/dist//httpd/httpd-2.2.29.tar.gz
 
tar xvfz httpd-2.2.29.tar.gz
 
cd httpd-2.2.29
 
./configure --with-mpm=prefork --prefix=/home/stephane/apache  --enable-rewrite --enable-proxy --enable-proxy_http --enable-deflate  --disable-userdir --enable-headers
 
make
 
make install
 
cd ~
 
 
 
cd ~/src
 
wget http://mir2.ovh.net/ftp.apache.org/dist/perl/mod_perl-2.0.8.tar.gz
 
tar xvfz mod_perl-2.0.8.tar.gz
 
cd mod_perl-2.0.8
 
perl Makefile.PL MP_APXS=/home/stephane/apache/bin/apxs
 
make
 
make install
 
cd ~
 
</pre>
 
 
 
==== Configuration ====
 
 
 
In ~/apache/conf/httpd.conf:
 
 
 
Change the port to something else than 80 (the reverse proxy will listen on 80 and forward to the backend on another port).
 
 
 
<pre>
 
Listen 8001
 
</pre>
 
 
 
If you are installing several Product Openers on the same machine, use different ports.
 
 
 
Change the Apache user to your user:
 
 
 
<pre>
 
User stephane
 
Group stephane
 
</pre>
 
 
 
Add to apache/conf/httpd.conf:
 
 
 
<pre>
 
LoadModule perl_module modules/mod_perl.so
 
 
 
PerlWarn Off
 
PerlRequire /home/stephane/product-opener/cgi/startup.pl
 
 
 
 
 
<Location /cgi>
 
SetHandler perl-script
 
PerlResponseHandler ModPerl::Registry
 
PerlOptions +ParseHeaders
 
Options +ExecCGI
 
Order allow,deny
 
Allow from all
 
</Location>
 
 
 
 
 
<VirtualHost *>
 
DocumentRoot /home/stephane/product-opener/html
 
ServerName openfoodfacts.ovh
 
ErrorLog /home/stephane/logs/error_log
 
CustomLog /home/stephane/logs/access_log combined
 
ScriptAlias /cgi/ "/home/stephane/product-opener/cgi/"
 
</VirtualHost>
 
 
 
PerlPostReadRequestHandler My::ProxyRemoteAddr
 
</pre>
 
 
 
=== Apache 2.4 - light weight reverse proxy ===
 
 
 
==== Build ====
 
 
 
<pre>
 
apt-get install libpcre3 libpcre3-dev
 
 
 
cd /home/stephane/src
 
wget http://apache.websitebeheerjd.nl//httpd/httpd-2.4.12.tar.gz
 
tar xvfz httpd-2.4.12.tar.gz
 
cd httpd-2.4.12
 
 
 
cd srclib
 
wget http://mir2.ovh.net/ftp.apache.org/dist//apr/apr-1.5.1.tar.gz
 
wget http://mir2.ovh.net/ftp.apache.org/dist//apr/apr-util-1.5.4.tar.gz 
 
tar xvfz apr-1.5.1.tar.gz
 
tar xvfz apr-util-1.5.4.tar.gz
 
ln -s apr-1.5.1 apr
 
ln -s apr-util-1.5.4 apr-util
 
cd ..
 
 
 
./configure --prefix=/home/stephane/proxy --enable-rewrite --enable-proxy --enable-proxy_http --disable-userdir --enable-headers --enable-expires --enable-mime --enable-so --with-included-apr
 
 
 
make
 
make install
 
cd ~
 
</pre>
 
 
 
==== Configuration ====
 
 
 
in proxy/conf/httpd.conf :
 
* uncomment #LoadModule rewrite_module modules/mod_rewrite.so
 
* uncomment #LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
 
 
 
Add in httpd.conf :
 
 
 
<pre>
 
<VirtualHost *>
 
DocumentRoot /home/stephane/product-opener/html
 
ServerName world.openfoodfacts.ovh
 
ServerAlias *.openfoodfacts.ovh
 
 
 
ErrorLog /home/stephane/logs/proxy_error_log
 
CustomLog /home/stephane/logs/proxy_access_log combined
 
ServerAdmin stephane@openfoodfacts.org
 
 
 
<Directory "/home/stephane/product-opener/html">
 
    Options Indexes FollowSymLinks
 
    Require all granted
 
</Directory>
 
ProxyPreserveHost On
 
RewriteEngine on
 
RewriteCond  %{REQUEST_URI}  !/./
 
RewriteRule ^(/cgi/.*)$ http://localhost:8001$1 [P,L]
 
RewriteMap escape int:escape
 
RewriteRule ^/favicon.ico$ /favicon.ico [L]
 
RewriteCond  %{REQUEST_URI}  !^/images/
 
RewriteCond  %{REQUEST_URI}  !^/js/
 
RewriteCond  %{REQUEST_URI}  !^/rss/
 
RewriteCond  %{REQUEST_URI}  !^/robots
 
RewriteCond  %{REQUEST_URI}  !^/clicks/
 
RewriteCond  %{REQUEST_URI}  !^/data/
 
RewriteCond  %{REQUEST_URI}  !^/files/
 
RewriteRule  ^(.*)$ http://localhost:8001/cgi/display.pl?${escape:$1} [P,L,QSA]
 
</VirtualHost>
 
 
 
 
 
<VirtualHost *>
 
DocumentRoot /home/stephane/product-opener/html
 
ServerName openfoodfacts.ovh
 
ErrorLog /home/stephane/logs/proxy_error_log
 
CustomLog /home/stephane/logs/proxy_access_log combined
 
DirectoryIndex index.html index.shtml
 
<Directory "/home/stephane/product-opener/html">
 
    Options -Indexes +FollowSymLinks +Includes
 
    Require all granted
 
</Directory>
 
RewriteEngine on
 
RewriteCond %{HTTP_HOST} ^stephane\.openfoodfacts\.ovh
 
RewriteRule ^/products$ /products.shtml [L]
 
 
 
</VirtualHost>
 
 
 
</pre>
 
 
 
 
 
 
 
=== Install Perl modules ===
 
 
 
If possible, use apt-get to install packages directly. If they are not available, you can use cpan to install the modules.
 
 
 
<pre>
 
apt-get install libwww-perl libimage-magick-perl
 
apt-get install  libxml-encoding-perl libtext-unaccent-perl libmime-lite-perl
 
apt-get install libcache-memcached-fast-perl libjson-perl libclone-perl  libgraphviz-perl
 
apt-get install libmime-lite-perl  # needs to be done after installing exim4
 
apt-get install libcrypt-passwdmd5-perl libencode-detect-perl libgraphics-color-perl libbarcode-zbar-perl
 
apt-get install libxml-feedpp-perl libmongodb-perl liburi-find-perl
 
</pre>
 
 
 
Modules that could not be installed using apt-get:
 
 
 
<pre>
 
cpan
 
install URI::Escape::XS
 
install Image::OCR::Tesseract # needs imagemagick installed first
 
</pre>
 
 
 
Modules that HAVE to be installed using cpan:
 
 
 
As of Feb 3rd 2015, the MongoDB perl module installed through "apt-get install libmongodb-perl" is too old (0.45):
 
 
 
<pre>
 
perl -MMongoDB -e 'print $MongoDB::VERSION . "\n"'
 
0.45
 
</pre>
 
 
 
This causes an error when trying to access a list of "tags" such as categories:
 
 
 
<pre>
 
Software error:
 
Not an ARRAY reference at /home/stephane/product-opener/cgi/Blogs/Display.pm line 797.
 
</pre>
 
 
 
A newer MongoDB perl module needs to be installed with cpan.
 
 
 
<pre>
 
cpan
 
install MongoDB
 
</pre>
 
 
 
<pre>
 
perl -MMongoDB -e 'print $MongoDB::VERSION . "\n"'
 
v0.708.0.0
 
</pre>
 
 
 
cgi/startup.pl preloads a lot of modules, you can check that those modules are installed by running:
 
 
 
<pre>
 
cd /home/stephane/product-opener/cgi
 
perl startup.pl
 
</pre>
 
 
 
=== Create some paths and links ===
 
 
 
<pre>
 
cd /home/stephane/product-opener/cgi
 
ln -s ./ Blogs
 
ln -s S
 

Revision as of 17:05, 2 May 2015

This project aims to collect information about Fast Food Products. Most of Fast Food products don't have a barcode. This page aims to find whether the information is published in bulk online (and what is published) so that we can add it to OpenFoodFacts.

A&W Restaurants

Arby's

Bojangles'

Brioche Dorée

Burger King

Café de Coral

Carl's Jr.

Charley's Grilled Subs

Checkers

Rally's

Chester's International

Chick-fil-A

Chicken Cottage

Chicken Delight

Chicken Licken (restaurant)|Chicken Licken

Chipotle Mexican Grill

Chowking

Church's Chicken ===Template:\ [[Texas Chicken

Dairy Queen

Dunkin' Donuts

El Pollo Loco

Fatburger

Graceland

Five Guys

Hardee's ===Template:\ [[Red Burrito

Hesburger

Jack in the Box

Jollibee

Kenny Rogers Roasters

KFC

Krystal (restaurant)|Krystal

Kyochon

Long John Silver's

Lotteria

Maoz Vegetarian

Marrybrown

McDonald's

Moe's Southwest Grill

MOS Burger

Nando's

Nathan's Famous

New York Fries

Noble Roman's

Panda Express

Paul (bakery)|Paul

Pizza Hut

Pollo Tropical

Popeyes Chicken & Biscuits

Quick (restaurant chain)|Quick

Quiznos

Raising Cane's Chicken Fingers

Red Rooster

Roy Rogers Restaurants

Smoothie King

Subway (restaurant)|Subway

Taco Bell

Taco Bueno

Taco Cabana

Taco del Mar

Taco John's

Taco Mayo

Taco Tico

Taco Time

Tastee-Freez

Tim Hortons

Togo's

Vapiano

Wendy's

Wendy's Supa Sundaes

Whataburger

White Castle (restaurant)|White Castle

White Spot

Wimpy (restaurant)|Wimpy

Wingstop

fr:Projet:Restauration Rapide