Instalacja Akeneo | X-Coding IT Studio

Instalacja Akeneo

8.08.2018 / / Developers

W dzisiejszym artykule opiszę proces instalacji Akeneo PIM na systemie Ubuntu 16.04 przy użyciu dockera.

Jeżeli nie masz zainstalowanego dockera (wraz z docker-compose), możesz zrobić to zgodnie z instrukcją tutaj: https://docs.docker.com/install/linux/docker-ce/ubuntu/

Docker-compose możesz zainstalować poleceniami:

curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Przystąpmy do samego uruchomienia Akeneo PIM. Zaczynamy od sklonowania repozytorium:

git clone https://github.com/akeneo/pim-community-standard.git

Jak widzimy, Akeneo przygotowało dla nas już plik docker-compose.yml, co znacząco wpłynie na ilość naszej pracy.

Na początek musimy zdecydować, na jakim porcie będziemy mieli dostęp do naszej instancji Akeneo PIM. Ja pracuję na dedykowanym dla PIMa środowisku, dlatego będę używał standardowego portu 80. Jeżeli inna usługa zajmuje już u Was ten port, wybierzcie inny (popularnym wyborem będzie 8080, czy 8888).

W przygotowanym przez Akeneo pliku docker-compose.yml port jest określany poprzez zmienną DOCKER_PORT_HTTP. Możemy zatem wybrany nasz port ustawić poleceniem:

export DOCKER_PORT_HTTP=80

Pobieramy zdalne obrazy dockera przy pomocy polecenia:

docker-compose pull

Teraz musimy zadbać o podstawowe opcje konfiguracji dla naszego PIM-a, kopiujemy plik z konfiguracją symfony:

cp app/config/parameters.yml.dist app/config/parameters.yml

i zmieniamy pod kątem użycia środowiska dockerowego. Mój plik wygląda ostatecznie tak (produkcyjna wersja powinna mieć oczywiście lepsze hasła):

parameters:
database_driver:                      pdo_mysql
database_host:                        mysql
database_port:                        ~
database_name:                        akeneo_pim
database_user:                        akeneo_pim
database_password:                    akeneo_pim
locale:                               en
secret:                               ThisTokenIsNotSoSecretChangeIt
product_index_name:                   akeneo_pim_product
product_model_index_name:             akeneo_pim_product_model
product_and_product_model_index_name: akeneo_pim_product_and_product_model
index_hosts:                          'elastic:changeme@elasticsearch:9200'

Musimy także zadbać o uprawnienia dla naszego katalogu. Wszystkie operacje na kontenerach będą wykonywały się z użytkownika docker. Najprostszą metodą na zapewnienie działania naszego systemu pod kątem uprawnień jest modyfikacja uprawnień i przypisanie plików do grupy docker oraz umożliwienie zapisu dla grupy:

chgrp docker . -R
chmod g+w . -R

Teraz możemy już uruchomić nasze kontenery:

docker-compose up -d

Od sukcesu dzieli nas jeszcze tylko kilka kliknięć. Akeneo przygotowało dla nas 2 skrypty:

bin/docker/pim-dependencies.sh
bin/docker/pim-initialize.sh

Uruchamiamy oba. Przy pierwszym prawdopodobnie dostaniemy komunikat, że musimy użyć naszego tokenu z githuba, żeby przeskoczyć ograniczenia repozytoriów. Logujemy się na github.com i następnie wchodzimy na podany w konsoli link. Wygląda on mniej więcej tak: https://github.com/settings/tokens/new?scopes=repo&description=Composer+on+X-Coding+2018-07-25+1356

Kopiujemy wyświetlony token i wklejamy w konsoli (token jest zapisany na koncie github, ale nie ma możliwości później go podejrzeć, możemy wygenerować po prostu kolejny token).

Po zakończeniu tego procesu możemy się zalogować do naszej instancji Akeneo PIM. Domyślne dane to: admin/admin.

Mam nadzieję, że pomogłem Ci trochę lepiej zrozumieć proces instalacji Akeneo PIM. Jeśli jest coś, czego jeszcze chcesz się dowiedzieć — daj znać w komentarzu.