Instalacja WordPress i Docker z własną lokalną domeną
W tym artykule przedstawię jak w szybki i łatwy sposób, bez dodatkowych programów takich jak XAMPP czy WampServer – postawić lokalnie WordPress z własną domeną lokalną. Jest to możliwe za pomocą narzędzia Docker, które pozwala zastąpić wirtualizację konteneryzacją.
Konteneryzacja jest to proces umożliwiający uruchomienie wskazanych aplikacji w wydzielonych kontenerach, które są odrębnymi instancjami środowiska uruchomieniowego. Dzięki takiemu rozwiązaniu kazdy kontener posiada własny obszar pamięci, interface sieciowy z adresem IP oraz obszar na dysku.
Przedstawiłem mniej więcej na czym polega Docker, jeśli chcesz się dowiedzieć więcej zapraszam do artykułu: Docker dla programistów, co to jest?
Instalacja Docker Desktop for Windows
W naszym przypadku będziemy operować na systemie Windows. Jeśli posiadasz system Linux instalacja odbywa się niemal tak samo. Co więcej Linux jest wg. mojej opinii lepszym i szybszym środowiskiem dla Docker’a. W przypadku tego projektu, który polega wyłącznie na postawieniu obrazu WordPress lokalnie – będziemy operować w Windows.
Pobieramy instalator Dockera i uruchamiamy w systemie Windows
Wchodzimy na stronę:
https://www.docker.com/products/docker-desktop
Wybieramy system, który nas interesuje i pobieramy instalator.
Uruchamiamy instalator i instalujemy Docker Desktop for Windows.
Tutaj znajdziesz dokumentacje instalacji dla Windows: https://docs.docker.com/docker-for-windows/install/
Po instalacji uruchamiamy Docker Desktop for Windows.
Uruchamiamy WordPress z Dockerem w systemie Windows
Do uruchomienia WordPress na naszej maszynie lokalnej przy pomocy Dockera, skorzystamy z rozwiązań zawartych w poradniku:
WordPress Local Development Using Docker Compose.
Klonujemy środowisko do odpalenia WordPress na Dockerze
Pierwszym krokiem będzie stworzenie folderu z naszym projektem. Folder tworzymy w wybranej lokacji przy pomocy Command Line:
1 | mkdir wp_with_docker |
Wewnątrz folderu wykonujemy komendę:
1 | git clone https://github.com/kassambara/wordpress-docker-compose |
W ten sposób sklonujemy już gotowe środowisko WordPress do odpalenia przez Dockera. Można pobrać ręcznie wchodząc w link: https://github.com/kassambara/wordpress-docker-compose
Instalujemy WordPress przez Dockera
Teraz gdy mamy już sklonowane podstawowe pliki konfiguracyjne przechodzimy do folderu z projektem:
1 | cd wordpress-docker-compose |
Instalujemy nasz projekt za pomocą komendy:
1 | docker-compose up -d --build |
Możemy przejść do instalacji WordPress na naszej maszynie lokalnej przechodząc pod adres: http://localhost
Własna domena lokalna – WordPress z Dockerem
Jeśli chcielibyśmy, aby nasza strona była odpalana przez własny adres url, a nie standardowo poprzez adres http://localhost, musimy odpowiednio stworzyć i skonfigurować plik .env w folderze naszego projektu. Drugim krokiem będzie wpisanie nowej nazwy hosta w pliku konfiguracyjnym windowsa: hosts
Konfigurujemy plik .env projektu WordPress
W folderze naszego projektu wordpress-docker-compose tworzymy plik .env, a wewnątrz pliku zawieramy konfigurację:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | # 1/ Project name ------------------------------------------------- # Must be lower-case, no spaces and no invalid path chars. # Will be used also as the WP database name COMPOSE_PROJECT_NAME=wordpress # 2/ Database user and password ----------------------------------------- # Set non-root database user if wanted (optional) DATABASE_PASSWORD=password DATABASE_USER=root # 3/ For wordpress auto-install and auto-configuration ------------------- WORDPRESS_WEBSITE_TITLE="My Blog" # URL: Use this for localhost WORDPRESS_WEBSITE_URL="http://mywppage.com" WORDPRESS_WEBSITE_URL_WITHOUT_HTTP=mywppage.com # Or this for online hosting (remove the # comment prefix) # WORDPRESS_WEBSITE_URL="http://www.example.com" # WORDPRESS_WEBSITE_URL_WITHOUT_HTTP="www.example.com" WORDPRESS_WEBSITE_POST_URL_STRUCTURE="/blog/%postname%/" # Website admin identification. Specify a strong password WORDPRESS_ADMIN_USER="wordpress" WORDPRESS_ADMIN_PASSWORD="wordpress" WORDPRESS_ADMIN_EMAIL="your-email@example.com" # 4/ Software versions ----------------------------------------------- WORDPRESS_VERSION=latest MARIADB_VERSION=latest # 5/ Ports: Can be changed ------------------------------------------- PHPMYADMIN_PORT=8080 # 6/ Volumes on host -------------------------------------------------- WORDPRESS_DATA_DIR=./wordpress # 7/ Healthcheck availability of host services (mysql and woordpress server) # Waiting time in second WAIT_BEFORE_HOSTS=5 WAIT_AFTER_HOSTS=5 WAIT_HOSTS_TIMEOUT=300 WAIT_SLEEP_INTERVAL=60 WAIT_HOST_CONNECT_TIMEOUT=5 # 8/ Used only in online deployement --------------------------------- WORDPRESS_WEBSITE_URL_WITHOUT_WWW=example.com PHPMYADMIN_WEBSITE_URL_WITHOUT_HTTP=sql.example.com |
Możemy tu skonfigurować wartości, które odpowiednio ustawią naszego WordPress’a. My chcemy zmienić nasz adres url naszego projektu. Naszą domenę nazwiemy: mywppage.com i dodamy ją w wartościach:
1 2 | WORDPRESS_WEBSITE_URL="http://mywppage.com" WORDPRESS_WEBSITE_URL_WITHOUT_HTTP=mywppage.com |
Teraz możemy przejść do edycji pliku hosts.
Dodajemy lokalną domenę w Windows
Przechodzimy do folderu C:\Windows\System32\drivers\etc\ i edytujemy plik hosts. Ważne, aby otworzyć plik lub uruchomić Command Line jako administrator.
Dodajemy linię:
1 | 127.0.0.1 mywppage.com |
Teraz odpalamy naszą stronę http://mywppage.com/
Po odpowiedniej konfiguracji, dodaniu użytkownika i zalogowaniu do naszej nowej strony otrzymujemy widok kokpitu naszej czystej instalacji WordPress z Dockerem:
Podsumowanie
Temat Dockera jest bardzo obszernym tematem i często sprawia programistom wiele problemów. W tym artykule dowiedziałeś się, jak w poprawny sposób zainstalować CMS WordPress lokalnie przy użyciu Dockera. Była to szybka i prosta instalacja, natomiast nie zawsze bywa tak łatwo. Istnieją bardziej złożone i skomplikowane konfiguracje środowisk uruchomieniowych, ale powstaje coraz więcej gotowych rozwiązań ułatwiających programistom korzystanie z Dockera.
Jeśli artykuł Ci się spodobał to zapraszam do odwiedzenia naszej listy artykułów: Przydatne artykuły.