باحال بودن docker به این هست که هر چی رو بخوای با سه سوت میتونی نصب کنی. وردپرس هم که معروف ترین نرم افزار وب هست، براش از قبل image آماده موجوده و فقط کافیه دستور مرتبط باهاش رو فراخوانی کنید.
آدرس ایمیج داکر رسمی وردپرس اینجاست
https://hub.docker.com/_/wordpress/
طبق مستندات انواع نسخه های php و نسخه های پایه لینوکس را پشتیبانی میکند و برای آنها ایمیج های مجزایی دارد.
ساده ترین مدل اجرای یک نسخه از وردپرس به صورت زیر می باشد:
$ docker run --name rajabpour-net -d wordpress
البته پارامتر name در اینجا فقط کار نامگذاری container اجرا شده را انجام می دهد و به این معنا نیست که بعد از زدن این دستور اگر آدرس https://rajabpour.net را در مرورگر بزنید سایت مربوطه باز خواهد شد.
ما فرض میگیریم که شما اطلاعات پایه ای از وردپرس و داکر را دارید. بنابراین بحثمون رو به نکات اصلی میبریم.
این ایمیج وردپرس کلی پارامتر ورودی از شما میگیره که مهم ترین و اصلی ترین اونها پارامترهای اتصال به پایگاه داده می باشد.
-e WORDPRESS_DB_HOST=... -e WORDPRESS_DB_USER=... -e WORDPRESS_DB_PASSWORD=... -e WORDPRESS_DB_NAME=... -e WORDPRESS_TABLE_PREFIX=...
پارامترهای دیگه ای مثل salt و تنظیمات multi site رو هم میگیره که میتونید در مستندات اون ببینید.
حتما یادتون باشه که با استفاده از volume اطلاعاتتون رو برای آینده حفظ کنید. چون در غیر اینصورت با پاک شدن کانتینر، اطلاعات سایت شما مثل تصاویر و فایل های سایت هم پاک می شود...
به عنوان نکته تکمیلی: معمولا از docker-compose برای راحت شدن کار استفاده میشه. در زیر می تونید فایل docker-compose کامل راه اندازی یک سایت وردپرس به همراه راه اندازی پایگاه داده رو ببینید
version: '3.1' services: wordpress: image: wordpress restart: always ports: - 8080:80 environment: WORDPRESS_DB_HOST: db WORDPRESS_DB_USER: exampleuser WORDPRESS_DB_PASSWORD: examplepass WORDPRESS_DB_NAME: exampledb volumes: - wordpress:/var/www/html db: image: mysql:5.7 restart: always environment: MYSQL_DATABASE: exampledb MYSQL_USER: exampleuser MYSQL_PASSWORD: examplepass MYSQL_RANDOM_ROOT_PASSWORD: '1' volumes: - db:/var/lib/mysql volumes: wordpress: db:
شاد و موفق باشید