ฉันจะโพสต์คำตอบบางส่วนเพื่อเริ่มการสนทนาโดยหวังว่าจะได้รับความคิดเห็นที่เป็นประโยชน์เพื่อเติมคำตอบในช่องว่างหรือคำตอบอื่น ...
ขั้นตอนที่ 1: ติดตั้งและตั้งค่า boot2docker
นักเทียบท่าทำงานบน Linux เท่านั้น ดังนั้นในการใช้ Docker บน Mac ของเราเราจำเป็นต้องติดตั้งboot2docker
ซึ่งจะเรียกใช้ Docker ใน Linux VM คุณสามารถติดตั้งboot2docker
โดยใช้Homebrew :
brew install boot2docker
เมื่อติดตั้งเสร็จแล้วให้ตั้งค่าและเริ่ม boot2docker:
boot2docker init
boot2docker start
ต่อไปเราต้องเรียกใช้คำสั่งเพื่อตั้งค่าตัวแปรสภาพแวดล้อมบางอย่างเพื่อให้นักเขียนที่จะรู้ว่าจะพบนักเทียบท่าภายใน boot2docker VM ของเรา
eval "$(boot2docker shellinit)"
คุณอาจต้องการเพิ่มบรรทัดที่ส่งออกตัวแปรไปยังของคุณ~/.bash_profile
เพื่อให้คุณไม่ต้องเรียกใช้คำสั่งทุกครั้งที่คุณเปิดหน้าต่างเทอร์มินัลใหม่
ขั้นตอนที่ 2: ติดตั้งนักเทียบท่าเขียน
มีปลั๊กอิน Docker ที่เรียกว่าdocker-compose
(แต่เดิมเรียกว่าfig
) ซึ่งทำให้ง่ายต่อการกำหนดความสัมพันธ์ระหว่างคอนเทนเนอร์ของนักเทียบท่าของคุณ คุณสามารถติดตั้งโดยใช้ Homebrew:
brew install docker-compose
ขั้นตอนที่ 3: สร้างนักเทียบท่า-compose.yml
มีอิมเมจ WordPress Docker อย่างเป็นทางการในรีจิสทรี Docker มันมีข้อมูลบางอย่างเกี่ยวกับการเริ่มต้น Docker แบบแมนนวลพร้อมกับแฟล็กบรรทัดคำสั่งทั้งหมดที่จำเป็นเพื่อให้มันทำงานได้ทั้งหมด docker-compose
เท่าที่ผมสามารถบอกคุณสามารถข้ามทุกที่เพราะเราจะใช้ ในไดเรกทอรีที่คุณจะทำงานกับชุดรูปแบบ WordPress ของคุณสร้างdocker-compose.yml
ด้วยเนื้อหาดังต่อไปนี้:
wordpress:
image: wordpress
links:
- db:mysql
ports:
- 8080:80
volumes:
- .:/var/www/html/wp-content/themes/my-theme-name
db:
image: mariadb
environment:
MYSQL_ROOT_PASSWORD: example
การvolumes
กำหนดค่าลิงก์ไฟล์ธีมของเราในไดเรกทอรีปัจจุบันของเราไปยังไดเร็กทอรีธีมใหม่ภายในคอนเทนเนอร์ Docker
ขั้นตอนที่ 4: เริ่มภาชนะบรรจุ
เรียกใช้docker-compose up
และคุณจะตั้งค่าสองคอนเทนเนอร์ Docker ("wordpress" และ "db") ที่กำลังเรียกใช้การติดตั้ง WordPress
ขั้นตอนที่ 5: เปิดเว็บไซต์ในเบราว์เซอร์
การdocker-compose.yml
กำหนดค่าของเราระบุว่าเรากำลังส่งต่อพอร์ต 80 ไปยังพอร์ต 8080 นอกจากนี้ยังboot2docker
รัน VM บนที่อยู่ IP ที่เฉพาะเจาะจง ดังนั้นเพื่อที่จะเข้าใจ URL เราจำเป็นต้องใช้boot2docker ip
คำสั่ง:
open http://$(boot2docker ip):8080
คำถาม
ตอนนี้ฉันมีตู้สินค้าและทำงานฉันมีคำถามสองสามข้อ ...
มีวิธีอัตโนมัติในการตั้งค่าตัวแปรสภาพแวดล้อม boot2docker นอกเหนือจากการคัดลอกและวางการส่งออกที่ระบุไว้boot2docker shellinit
หรือไม่
เมื่อฉันทำงานกับแอพพลิเคชั่น Rails ฉันชอบที่จะใช้Powเพื่อให้ฉันสามารถเข้าถึงแอพโดยใช้.dev
โดเมนที่มีชื่อแทนการทำงานกับพอร์ต / IP ที่เฉพาะเจาะจง ฉันจะกำหนดค่าระบบของฉัน (หรือ Pow) เพื่อให้ฉันสามารถเข้าถึงโฮสต์โดยใช้http://mysite.dev ได้อย่างไร
มีขั้นตอนใดบ้างที่ฉันพลาดไป? หรือมีขั้นตอนใดบ้างที่ควรเพิ่มเข้าท้าย?