Bitnami Spree

    Spree is the Most Powerful and Flexible E-Commerce Platform for the Ruby Enterprise.

    How to start/stop the servers?

    Graphical tool

    The native installers include a graphical tool to manage the servers easily. You can find the "manager-windows.exe", "manager-osx" or "manager-linux" tool in your installation directory. Using this tool, you can Start, Stop or Restart the servers and check the log files. You can click on the icon to start it.

    manager-servers.png

     

    manager-osx.png

     

     

     

     

     

     

     

     

     


    win_platform.png

    On Windows: You can also start the Manager tool from shortcuts: Start -> Program Files -> Bitnami Stack -> Manager tool

    Command line tool

    If you prefer, you can use the "ctlscript.sh" utility from the command line. This script is in the installation directory.

    linux_platform.png

    On Virtual Machines and Cloud images:

    $ sudo /opt/bitnami/ctlscript.sh start

    A native installer on Linux:

    $ cd ~/application-version
    $ ./ctlscript.sh start
    

    mac_platform.png

     

    On OS X: You can start the Manager tool from the installation directory or you can use the "ctlscript.sh" utility from a Terminal.

    host:~ user$ cd /Applications/application-version
    host:~ user$ ./ctlscript.sh start

    How to change the default prefix?

    If you want to change Spree to the root url you should follow the next next section. In this section you can see how to replace the URL "/spree" with "/new_url".

    linux_platform.png  mac_platform.pngOn Linux and OS X, you should modify the following options in the "installdir/apps/spree/config/httpd-prefix.conf" file. Note if you are using the Virtual Appliance or the AMI, replace installdir with "/opt/bitnami" by default.

    SetEnv RAILS_RELATIVE_URL_ROOT "/new_name"
    PassengerPreStart http://127.0.0.1/new_name
    

    Then, restart the server:

    $ ./ctlscript.sh restart apache
    


    win_platform.pngOn Windows it is necessary to modify the Apache configuration. Edit "installdir/apps/spree/conf/httpd-prefix.conf" the file to modify the "/spree" setting:

    Alias /new_name/ "installdir/apps/spree/htdocs/public/"
    Alias /new_name "installdir/apps/spree/htdocs/public"

    And also change "installdir/apps/spree/conf/httpd-app.conf"

    RewriteRule ^/new_name/?$ balancer://spreecluster%{REQUEST_URI} [P,QSA,L]
    ProxyPassReverse /new_name balancer://spreecluster/new_name
    
    RewriteRule ^/new_namet/(.*) /new_name/t/$1 [R]
    

    You should modify the "installdir/apps/spree/scripts/serviceinstall.bat" and change the prefix entry "--prefix /spree".  You should also update the prefix in the "installdir/apps/spree/htdocs/config/additional_environment.rb" file.

    Then run the following command from a command prompt with Admin privileges:

    > cd “C:\bitnami\Spree-1.2.2-0\apps\spree\scripts”
    > serviceinstall.bat UNINSTALL
    > serviceinstall.bat INSTALL
    

    Then restart the Apache server using the Manager graphical application.

    In both cases, before restarting the Apache server, you should precompile the assets again. To do so:

    cd /installdir/
    ./use_spree
    cd apps/spree/htdocs
    ruby bin/rake assets:clean RAILS_ENV=production
    ruby bin/rake assets:precompile RAILS_ENV=production RAILS_RELATIVE_URL_ROOT='/'
    

    How to change the default URL?

    Automatic Approach

    This approach is based on the Bitnami Configuration Tool (bnconfig).

    Bitnami Cloud Hosting

    The best way to change your URL in BCH is to go to your application tab and modify it there. In the Bitnami Cloud Hosting console, select Servers, choose your server, Manage and go to the Applications tab. Press there the pencil next to the application which URL you want to modify and choose .

    Refer to this guide for more information.

    Cloud Images and Virtual Machines

    Moving the application to /

     If your application is running in "/spree" you can remove the prefix from the URL executing the following command:

    $ sudo /opt/bitnami/apps/spree/bnconfig --appurl /
    

    (use --help to check if that option is available for your application)

    Now you will be able to access to the application at http://YOUR_DOMAIN instead of http://YOUR_DOMAIN/spree.

    Updating the IP or hostname

    Some applications require to update the IP/domain if the machine IP/domain changes. The bnconfig tool also has an option which updates the IP automatically during boot, called machine_hostname (use --help to check if that option is available for your application). Note that this tool changes the URL to http://NEW_DOMAIN/spree

    sudo /opt/bitnami/apps/spree/bnconfig --machine_hostname NEW_DOMAIN
    

    If you already moved your application to the root URL you should include both options at the same time.

    sudo /opt/bitnami/apps/spree/bnconfig --appurl / --machine_hostname NEW_DOMAIN
    

    If you have configured your machine to use an static domain name or IP, you should rename or remove the "/opt/bitnami/apps/spree/bnconfig" file.

    sudo mv /opt/bitnami/apps/spree/bnconfig /opt/bitnami/apps/spree/bnconfig.disabled
    

    Native Installer

    Remember to use your actual installation directory instead of installdir.

    Moving the application to /

    If your application is running in "/spree" you can remove the prefix from the URL executing the following command:

    On Linux,

    installdir/apps/spree/bnconfig --appurl /
    

    On Mac OS X, 

    installdir/apps/spree/bnconfig.app/Contents/MacOS/installbuilder.sh --appurl /
    

    On Windows,

    installdir/apps/spree/bnconfig.exe --appurl /
    

    (use --help to check if that option is available for your application)

    Now you will be able to access to the application at http://YOUR_DOMAIN instead of http://YOUR_DOMAIN/spree.

    Updating the IP or hostname

    Some applications require to update the IP/domain if the machine IP/domain changes. The bnconfig tool also has an option which updates the IP , called machine_hostname (use --help to check if that option is available for your application). Note that this tool changes the URL to http://NEW_DOMAIN/spree.

    installdir/apps/spree/bnconfig --machine_hostname NEW_DOMAIN
    

    If you already moved your application to the root URL you should include both options at the same time.

    installdir/apps/spree/bnconfig --appurl / --machine_hostname NEW_DOMAIN
    

    Tabs end

    Manual Approach

     

      mac_platform.pngOn Linux and OS linux_platform.pngX, you can change the "installdir/apps/spree/conf/httpd-prefix.conf" file to modify the "/spree" url to the root url. You can find below a configuration example. Please take into account that your current spree.conf file may be a little bit different. You should modify the "installdir/apps/spree/config/httpd-prefix.conf" file according to the changes that you can see in bold:

    #Alias /spree/ "/installdir/apps/spree/htdocs/public/"
    #Alias /spree "/installdir/apps/spree/htdocs/public"
    DocumentRoot "/installdir/apps/spree/htdocs/public"
    
    Include /installdir/apps/spree/conf/httpd-app.conf
    

    Then edit the "installdir/apps/spree/config/httpd-app.conf" file to remove the "/spree" prefix:

     <Directory "/opt/bitnami/apps/spree/htdocs/public">
        Options -MultiViews
        AllowOverride All
        <IfVersion < 2.3 >
        Order allow,deny
        Allow from all
        </IfVersion>
        <IfVersion >= 2.3>
        Require all granted
        </IfVersion>
        #SetEnv RAILS_RELATIVE_URL_ROOT "/spree"
        PassengerAppRoot "/opt/bitnami/apps/spree/htdocs"
    </Directory>
    PassengerPreStart http://127.0.0.1:80/

    It is also necessary to recompile the assets when you change the URL.

    cd /installdir/
    ./use_spree
    cd apps/spree/htdocs
    ruby bin/rake assets:clean RAILS_ENV=production
    ruby bin/rake assets:precompile RAILS_ENV=production

    This process could take some time.

    Then restart the Apache server.

    $ ./ctlscript.sh restart apache

    win_platform.pngOn Windows it is necessary to modify the Apache configuration. Edit "installdir/apps/spree/conf/httpd-app.conf" the file to remove the "/spree" setting:

    RewriteEngine On
    
    <Directory "installdir/apps/spree/htdocs/public">
        Options -MultiViews -Indexes
        AllowOverride None
        <IfVersion < 2.3 >
        Order allow,deny
        Allow from all
        </IfVersion>
        <IfVersion >= 2.3>
        Require all granted
        </IfVersion>
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule . balancer://spreecluster%{REQUEST_URI} [P,QSA,L]
    </Directory>
    
    RewriteRule ^/?$ balancer://spreecluster%{REQUEST_URI} [P,QSA,L]
    ProxyPassReverse / balancer://spreecluster/
    

    You have to modify the "installdir/apps/spree/config/httpd-prefix.conf" file according to the changes that you can see in bold:

    #Alias /spree/ "/installdir/apps/spree/htdocs/public/"
    #Alias /spree "/installdir/apps/spree/htdocs/public"
    DocumentRoot "/installdir/apps/spree/htdocs/public"
    
    Include /installdir/apps/spree/conf/httpd-app.conf

    Besides, you should modify the "installdir/apps/spree/scripts/serviceinstall.bat" and remove the prefix entry "--prefix /spree". You should also remove the "installdir/apps/spree/htdocs/config/additional_environment.rb" file which ships the prefix too. Then run the following command from a command prompt with Admin privileges:

    > cd “C:\bitnami\Spree-1.2.2-0\apps\spree\scripts”
    > serviceinstall.bat UNINSTALL
    > serviceinstall.bat INSTALL
    

    Then restart the Apache server. You can use the Manager graphical tool to restart it. Do not forget to refresh the web page to clean the cache.

    How to create a full backup of spree?

    Backup

    Bitnami stacks are self-contained and the simplest option for performing a backup is to copy or compress the Bitnami stack installation directory. To do so in a safe manner, you will need to stop all servers, so this method may not be appropriate if you have people accessing the application continuously.

    Cloud Server

    Follow these steps:

    • Change to the directory in which you wish to save your backup.
      cd /your/directory
      
    • Stop all servers.
      $ sudo /opt/bitnami/ctlscript.sh stop
      
    • Create a compressed file with the stack contents.
      $ sudo tar -pczvf application-backup.tar.gz /opt/bitnami
    • Restart all servers.
      $ sudo /opt/bitnami/ctlscript.sh start

    You should now download or transfer the application-backup.tar.gz file to a safe location.

    Virtual Machine

    Follow these steps:

    • Change to the directory in which you wish to save your backup.
      cd /your/directory
      
    • Stop all servers.
      $ sudo /opt/bitnami/ctlscript.sh stop
    • Create a compressed file with the stack contents.
      $ sudo tar -pczvf application-backup.tar.gz /opt/bitnami
    • Restart all servers.
      $ sudo /opt/bitnami/ctlscript.sh start
      

    You should now download or transfer the application-backup.tar.gz file to a safe location.

    Native Installer (Windows)

    Follow these steps:

    • Stop all servers using the shortcuts in the Start Menu or the graphical manager tool.
    • Create a compressed file with the stack contents. You can use a graphical tool like 7-Zip or WinZip.
    • Stop all servers using the shortcuts in the Start Menu or the graphical manager tool.

    You should now download or transfer the application-backup.zip file to a safe location.

    Native Installer (Linux and Mac OS X)

    Follow these steps:

    • Change to the directory in which you wish to save your backup.
      cd /your/directory
      
    • Stop all servers.
      $ sudo installdir/ctlscript.sh stop
      
    • Create a compressed file with the stack contents.
      $ sudo tar -pczvf application-backup.tar.gz installdir
      
    • Restart all servers.
      $ sudo installdir/ctlscript.sh start
      

    You should now download or transfer the application-backup.tar.gz file to a safe location.

    Tabs end

    Restore

    Bitnami stacks are self-contained, so to restore a stack, you only need to uncompress the backup file in the same location. It is important to use the same path that was used when the stack was originally installed.

    Cloud Server

    Follow these steps:

    • Change to the directory containing your backup.
      cd /your/directory
      
    • Stop all servers.
      $ sudo /opt/bitnami/ctlscript.sh stop
    • Rename the current directory to save it.
      $ sudo mv /opt/bitnami /opt/bitnamiBackup
    • Uncompress the backup file to the original directory.
      $ sudo tar -pxzvf application-backup.tar.gz -C /
    • Start all servers.
      $ sudo /opt/bitnami/ctlscript.sh start
      

    Virtual Machine

    Follow these steps:

    • Change to the directory containing your backup.
      cd /your/directory
      
    • Stop all servers.
      $ sudo /opt/bitnami/ctlscript.sh stop
    • Rename the current directory to save it.
      $ sudo mv /opt/bitnami /opt/bitnamiBackup
    • Uncompress the backup file to the original directory.
      $ sudo tar -pxzvf application-backup.tar.gz -C /
    • Start all servers.
      $ sudo /opt/bitnami/ctlscript.sh start
      

    Native Installer (Windows)

    Follow these steps:

    • Uncompress the backup file to the original directory.
    • Install services by launching a new command prompt and executing the following commands. Administrator privileges are required.
      $ cd installdir
      $ serviceinstall.bat INSTALL
      

    You can now start or stop servers using the graphical manager tool.

    Native Installer (Linux and Mac OS X)

    Follow these steps:

    • Change to the directory containing your backup.
      cd /your/directory
      
    • Stop all servers.
      $ sudo /opt/bitnami/ctlscript.sh stop
      
    • Rename the current directory to save it.
      $ sudo mv installdir installdirBackup
    • Uncompress the backup file to the original directory.
      $ sudo tar -pxzvf application-backup.tar.gz -C /
      
    • Start all servers.
      $ sudo installdir/ctlscript.sh start
      

    Tabs end

    IMPORTANT: When restoring, remember to maintain the original permissions for the files and folders. For example, if you originally installed the stack as 'root', make sure that the restored files are owned by 'root'.


    If you want to create only a database backup, refer to these instructions for MySQL and PostgreSQL.

    How to upgrade Spree?

    It is strongly recommended that you create a backup before starting the update process. If you have important data, it is advisable that you create and try to restore a backup to ensure that everything works properly.

    There are two different ways to upgrade your application.

    1. If you want to upgrade the application and all Stack components PHP, Ruby, MySQL, Apache… You can follow the steps described at How to upgrade the full Stack migrating the data?
    2. In case you only want to upgrade the application code without modifying any other Stack components. You can find below the steps to upgrade only the Spree application.

    It is necessary to run the following command:

    $ cd installdir
    $ ./use_spree
    $ cd apps/spree/htdocs
    $ gem update spree

    Afterwards, restart the Apache server, and the thin servers in Windows.

    How to install the sample data in Spree?

    The sample data shipped with Spree can be added manually after performing the installation of the Bitnami Spree stack, if the option of not installing it automatically was chosen. 

    To do so, run the following commands:

    $ cd installdir
    $ ./use_spree
    $ cd apps/spree/htdocs
    $ rake spree_sample:load
    $ rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets
    $ cd installdir
    $ ./ctlscript.sh restart apache

    How to install the SpreeFancy theme in Spree?

    SpreeFancy is a theme that can be applied to an existing spree application. It's intended as a starting point to show how a barebones Spree application can be easily modified to give a nice look and feel. As a special bonus it uses a responsive design so looks good on mobile devices as well as on larger screens.

    To apply it to a Bitnami Spree (>= 2.x) installation, you can follow these steps:

    • Add the following text to the <installdir>/apps/spree/htdocs/Gemfile:
    gem 'spree_fancy', :github => 'spree/spree_fancy', :branch => '2-0-stable'
    • Then, run bundle install:
    <installdir>/use_spree
    cd <installdir>/apps/spree/htdocs
    bundle install --without development test postgres sqlite --binstubs
    • Finally, enable it:
    yes | bundle exec rails g spree_fancy:install
    • Assets has to be precompiled again and the apache server must be restarted:
    bin/rake assets:precompile RAILS_RELATIVE_URL_ROOT='/spree'
    <installdir>/ctlscript.sh restart apache

    Now, SpreeFancy theme is installed on top of your Bitnami Spree installation.

    Tag page (Edit tags)
    • No tags
    Page statistics
    18048 view(s), 13 edit(s) and 10911 character(s)

    Comments

    You must login to post a comment.

    Attach file

    Attachments