Mon compte clientContact commercialWebmailOVHcloud Blog

Bienvenue chez OVHcloud !

Identifiez-vous pour commander, gérez vos produits et services et suivre vos commandes

Me connecter

Installer Camaleon sur votre hébergement web POWER

Découvrez comment installer Camaleon sur votre hébergement web POWER

Dernière mise à jour le 03/02/2021

Objectif

Vous avez souscrit à un hébergement web POWER Ruby et vous voulez y déployer Camaleon, un CMS flexible vous permettant de créer une structure de contenu personnalisée sans avoir à coder.

Découvrez comment installer Camaleon sur votre hébergement web POWER

Prérequis

Si vous n'êtes pas encore familier avec l'utilisation de votre hébergement web POWER, nous vous conseillons de consulter notre guide « Premiers pas avec un hébergement web POWER » avant de poursuivre la lecture de ce guide.

En pratique

Supposons que vous avez la configuration normale pour un hébergement web POWER :

  • Moteur : ruby 2.6
  • Point d'entrée : config.ru
  • Dossier racine : www
  • Environment: development

Attention, Rails dépend de l'environnement (RAILS_ENV)

Vous pouvez appeler l'API OVHcloud pour visualiser la configuration active.

Accédez via SSH à votre hébergement web POWER.

Supprimez le dossier racine pour l'initialiser avec Rails. N'oubliez pas d'exporter votre gempath ou l'installation du bundle va échouer :

rm -rf www
gem env gempath
export GEM_HOME=$(gem env gempath | cut -d ':' -f1)
export RAILS_ENV=${OVH_ENVIRONMENT}
rails new www
cd www/
rails  webpacker:install

Préparez votre Gemfile :

echo "gem 'camaleon_cms', '>= 2.4.5'" >> Gemfile
echo "gem 'draper', '~> 3'"  >> Gemfile
echo "gem 'execjs', '>= 2.7.0'"  >> Gemfile

Installez vos Gems :

bundle install

Utilisez le moteur Node.js pour Camaleon Javascript :

sed -i 's@\["nodejs", "node"\],@["/usr/local/nodejs14/bin/node"],@' ${GEM_HOME}/gems/execjs-2.7.0/lib/execjs/runtimes.rb

Lancez Camaleon avec votre base de données sqlite. Attention, il y a 4 commandes différentes à lancer :

rails generate camaleon_cms:install
rake camaleon_cms:generate_migrations
rake db:migrate
rake assets:precompile

Déclarez votre nom de domaine sur liste blanche dans www/config/environments/development.rb :

Rails.application.configure do
  # Whitelist one hostname
  config.hosts << "your-domain.ovh"

Et désactivez la vérification check_yarn_integrity dans la partie development de www/config/webpacker.yml :

development:
  <<: *default
  compile: true

  # Verifies that correct packages and versions are installed by inspecting package.json, yarn.lock, and node_modules
  check_yarn_integrity: false

Redémarrez votre instance, votre CMS Camaleon sera alors en ligne.

Camaleon

Sortie de la console:

~ $ rm -rf www

~ $ gem env gempath
/homez.41/powerlp/.gem/ruby/2.6.0:/usr/local/ruby2.6/lib/ruby/gems/2.6.0

~ $ export GEM_HOME=$(gem env gempath | cut -d ':' -f1)

~ $ export RAILS_ENV=${OVH_ENVIRONMENT}

~ $ rails new www
      create
      create  README.md
      create  Rakefile
      create  .ruby-version
[...]
Fetching webpacker 4.3.0
Installing webpacker 4.3.0
Bundle complete! 17 Gemfile dependencies, 75 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
         run  bundle binstubs bundler
[...]   
Installing all JavaScript dependencies [4.3.0]
         run  yarn add @rails/webpacker@4.3.0 from "."
yarn add v1.22.10
[...]
├─ strip-eof@1.0.0
├─ thunky@1.1.0
├─ type-is@1.6.18
├─ unpipe@1.0.0
├─ url-parse@1.4.7
├─ utils-merge@1.0.1
├─ wbuf@1.7.3
├─ webpack-dev-middleware@3.7.3
├─ webpack-dev-server@3.11.2
├─ websocket-driver@0.7.4
├─ websocket-extensions@0.1.4
└─ ws@6.2.1
Done in 6.19s.
Webpacker successfully installed 🎉 🍰

~ $ cd www/

~/www $ rails  webpacker:install
   identical  config/webpacker.yml
Copying webpack core config
       exist  config/webpack
   identical  config/webpack/development.js
   identical  config/webpack/environment.js
   identical  config/webpack/production.js
   identical  config/webpack/test.js
[...]
info Direct dependencies
└─ webpack-dev-server@3.11.2
info All dependencies
└─ webpack-dev-server@3.11.2
Done in 3.81s.
Webpacker successfully installed 🎉 🍰

~/www $ echo "gem 'camaleon_cms', '>= 2.4.5'" >> Gemfile

~/www $ echo "gem 'draper', '~> 3'"  >> Gemfile

~/www $ echo "gem 'execjs', '>= 2.7.0'"  >> Gemfile

~/www $ bundle install
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies.....
Using rake 12.3.2
Using concurrent-ruby 1.1.5
[...]
Using uglifier 4.1.20
Using web-console 3.7.0
Bundle complete! 20 Gemfile dependencies, 103 gems now installed.
Use bundle info [gemname] to see where a bundled gem is installed.

~/www $ sed -i 's@\["nodejs", "node"\],@["/usr/local/nodejs14/bin/node"],@' ${GEM_HOME}/gems/execjs-2.7.0/lib/execjs/runtimes.rb

 ~/www $ rails generate camaleon_cms:install
Running via Spring preloader in process 3807
WARNING: Spring is running in production. To fix this make sure the spring gem is only present in `development` and `test` groups in your Gemfile and make sure you always use `bundle install --without development test` in production
      create  config/system.json
      create  lib/plugin_routes.rb
       exist  app/apps
      create  app/apps/themes/readme.txt
       exist  app/apps/themes
[...]
      create  app/apps/themes/new/views/search.html.erb
      append  app/assets/config/manifest.js
      append  config/initializers/assets.rb
      append  Gemfile

 ~/www $ rake camaleon_cms:generate_migrations
Copied migration 20210203210456_create_active_storage_tables.active_storage.rb from active_storage
Copied migration 20210203210457_create_action_mailbox_tables.action_mailbox.rb from action_mailbox
Copied migration 20210203210458_create_action_text_tables.action_text.rb from action_text
Copied migration 20210203210459_create_db_structure.cama_contact_form_engine.rb from cama_contact_form_engine
[...]
Copied migration 20210203210469_create_media.camaleon_cms_engine.rb from camaleon_cms_engine
Copied migration 20210203210470_adjust_field_length.camaleon_cms_engine.rb from camaleon_cms_engine

 ~/www $ rake db:migrate
== 20210203210456 CreateActiveStorageTables: migrating ========================
-- create_table(:active_storage_blobs, {})
   -> 0.0020s
[...]
-- add_index("cama_posts", :slug, {:length=>255})
   -> 0.0011s
-- change_column("cama_term_taxonomy", :name, :text, {})
   -> 0.0141s
== 20210203210470 AdjustFieldLength: migrated (0.0479s) =======================

~/www $ rake assets:precompile
yarn install v1.22.10
[1/4] Resolving packages...
success Already up-to-date.
Done in 0.70s.
yarn install v1.22.10
[...]
I, [2021-02-03T21:06:42.780527 #6031]  INFO -- : Creating symlink /home/powerlp/www/public/assets/tinymce/skins/lightgray/fonts/tinymce.eot
I, [2021-02-03T21:06:42.781108 #6031]  INFO -- : Creating symlink /home/powerlp/www/public/assets/tinymce/skins/lightgray/fonts/tinymce.eot.gz

~/www $ mkdir -p tmp

~/www $ touch tmp/restart.txt

Aller plus loin

Échangez avec notre communauté d'utilisateurs sur https://community.ovh.com/.

Pour discuter avec les autres utilisateurs du lab et avec l'équipe POWER Web Hosting, venez sur notre room Gitter.


Cette documentation vous a-t-elle été utile ?

N’hésitez pas à nous proposer des suggestions d’amélioration afin de faire évoluer cette documentation.

Images, contenu, structure… N’hésitez pas à nous dire pourquoi afin de la faire évoluer ensemble !

Vos demandes d’assistance ne seront pas traitées par ce formulaire. Pour cela, utilisez le formulaire "Créer un ticket" .

Merci beaucoup pour votre aide ! Vos retours seront étudiés au plus vite par nos équipes..


Ces guides pourraient également vous intéresser...

OVHcloud Community

Accedez à votre espace communautaire. Posez des questions, recherchez des informations, publiez du contenu et interagissez avec d’autres membres d'OVHcloud Community.

Echanger sur OVHcloud Community