| myst |
|
||||||
|---|---|---|---|---|---|---|---|
| redirect_from |
|
Akeneo 6 preferably requires a Hypernode Pelican L, Falcon M, Eagle M hosting plan or larger. You can either choose to install it on a seperate Hypernode instance or on the same Hypernode as your Magento or Shopware installation. If you choose the latter you have to make sure that you have enough resources (disk space, memory and CPU) left. Furthermore you need to make sure that you are already using MySQL 8.0, PHP 8.0 and Elasticsearch 7.x, so it won’t affect your shop negatively. Installing Akeneo version 6.x may take up to 15 minutes.
All new Hypernodes (from April 2020) will automatically be booted with Hypernode Managed Vhosts. If you already have an older Hypernode, then you need to enable Hypernode Managed Vhosts by running the following command:
hypernode-systemctl settings managed_vhosts_enabled TrueIf your Magento or Shopware installation already points to example.hypernode.io, you can create a managed_vhost for your Akeneo installation on a subdomain, for example akeneo.example.hypernode.io. The command below will also install Let’s Encrypt and force your domain to use HTTPS.
hypernode-manage-vhosts akeneo.example.hypernode.io --type generic-php --https --force-https --webroot /data/web/akeneo/publicThe file server.akeneo.conf will be created and the nginx configuration will look like this:
root /data/web/akeneo/public;
include /etc/nginx/handlers.conf;
include /etc/nginx/phpmyadmin.conf;
index index.php index.html;
location / {
try_files $uri /index.php$is_args$args;
}
location ~ \.php$ {
echo_exec @phpfpm;
}Important: After an update to MySQL 5.7 or 8.0, it’s not possible to switch back to MySQL 5.6.
It's important to follow these steps in order since you cannot upgrade straight from MySQL 5.6 to MySQL 8.0.
First you’ll have to upgrade MySQL 5.6 to 5.7 by running the commando:
hypernode-systemctl settings mysql_version 5.7After that upgrade from MySQL 5.7 to MySQL 8.0
hypernode-systemctl settings mysql_version 8.0Before installing Akeneo, make sure your PHP version is changed to PHP 8.0.
hypernode-systemctl settings php_version 8.0hypernode-systemctl settings php_apcu_enabled Truehypernode-systemctl settings elasticsearch_version 7.xhypernode-systemctl settings elasticsearch_enabled TrueSoon available.
If you don't want to use the pre-install image, than follow the steps below to manually download and install Akeneo in /data/web/akeneo
hypernode-systemctl settings nodejs_version 16After Node.js has been installed you can check if it’s correctly set by running node -v. This should output v16.x.x.
echo 'prefix=${HOME}/.npm' > ~/.npmrc
npm install -g yarn
mkdir -p ~/.local/bin
ln -s ~/.npm/bin/yarn ~/.local/bin/yarn
ln -s ~/.npm/bin/yarnpkg ~/.local/bin/yarnpkg
source ~/.profilecomposer create-project akeneo/pim-community-standard:"^6.0" akeneomysql -e "create database akeneo_pim;"Edit the values of your MySQL user, password, host and Elasticsearch host in /data/web/akeneo/.env
sed -i "s/APP_DATABASE_PASSWORD=akeneo_pim/APP_DATABASE_PASSWORD=$(cat ~/.my.cnf | grep password | awk '{print$NF}')/" /data/web/akeneo/.env
sed -i "s/APP_DATABASE_USER=akeneo_pim/APP_DATABASE_USER=$(cat ~/.my.cnf | grep user | awk '{print$NF}')/" /data/web/akeneo/.env
sed -i "s/APP_DATABASE_HOST=mysql/APP_DATABASE_HOST=mysqlmaster.YOUR_APP_NAME_HERE.hypernode.io/" /data/web/akeneo/.env
sed -i "s/APP_INDEX_HOSTS=elasticsearch:9200/APP_INDEX_HOSTS=localhost:9200/" /data/web/akeneo/.env
cp /data/web/akeneo/.env /data/web/akeneo/.env.localNO_DOCKER=true make prodln -s /data/web/akeneo/public /data/web/akeneo_publicFill in the form with a Username, Password, First name, Last name, Email and local code.
bin/console pim:user:createOn Hypernode we have two options to set up the job queue daemon for Akeneo. This can be done via Supervisor or the Cron.
Before we start using Supervisor we first need to enable it on the Hypernode.
hypernode-systemctl settings supervisor_enabled TrueCreate a file in the configuration directory of supervisor: ~/supervisor/akeneodaemon.conf
[program:akeneo_queue_daemon]
directory=/data/web/akeneo
command=php bin/console messenger:consume ui_job import_export_job data_maintenance_job --env=prod
autostart=false
autorestart=true
stderr_logfile=/data/web/akeneo_daemon.err.log
stdout_logfile=/data/web/akeneo_daemon.out.log
user=appsupervisorctl reread
supervisorctl updatesupervisorctl start akeneo_queue_daemonConfigure your crons by adding these scripts to your crontab file as recommended by Akeneo:
30 1 * * * php /data/web/akeneo/bin/console pim:versioning:refresh
30 2 * * * php /data/web/akeneo/bin/console pim:versioning:purge –more-than-days 90
1 * * * * php /data/web/akeneo/bin/console akeneo:connectivity-audit:update-data
20 0 1 * * php /data/web/akeneo/bin/console akeneo:batch:purge-job-execution
0 1 * * * php /data/web/akeneo/bin/console pim:asset:send-expiration-notification
30 4 * * * php /data/web/akeneo/bin/console pim:volume:aggregate
* * * * * php /data/web/akeneo/bin/console akeneo:batch:job-queue-consumer-daemon