คำถามติดแท็ก docker

นักเทียบท่าเป็นเครื่องมือในการสร้างและเรียกใช้ภาชนะบรรจุ คำถามเกี่ยวกับนักเทียบท่าการปฏิบัติการและสถาปัตยกรรมเป็นที่ยอมรับ คำถามเกี่ยวกับการใช้งานนักเทียบท่าในการผลิตอาจพบการตอบสนองที่ดีขึ้นใน ServerFault (https://serverfault.com/) แท็กนักเทียบท่าไม่ค่อยได้ใช้คนเดียวและมักจะจับคู่กับแท็กอื่น ๆ เช่นนักแต่งและนักแต่งเพลง

19
Docker แตกต่างจากเครื่องเสมือนจริงอย่างไร
ฉันทำการอ่านเอกสาร Docker อีกครั้งเพื่อพยายามเข้าใจความแตกต่างระหว่าง Docker และ VM แบบเต็ม มันจะจัดการให้ระบบไฟล์เต็มรูปแบบสภาพแวดล้อมเครือข่ายที่แยกได้ ฯลฯ โดยไม่หนักหนาได้อย่างไร ทำไมการปรับใช้ซอฟต์แวร์กับอิมเมจ Docker (หากเป็นคำที่ถูกต้อง) ง่ายกว่าการปรับใช้กับสภาพแวดล้อมการผลิตที่สอดคล้องกัน

12
ความแตกต่างระหว่างคำสั่ง 'COPY' และ 'เพิ่ม' ใน Dockerfile คืออะไร?
อะไรคือความแตกต่างระหว่างคำสั่งCOPYและADDคำสั่งใน Dockerfile และเมื่อไหร่ที่ฉันจะใช้อันอื่น COPY <src> <dest> คำสั่ง COPY จะคัดลอกไฟล์ใหม่จาก<src>และเพิ่มไปยังระบบไฟล์ของคอนเทนเนอร์ที่พา ธ<dest> ADD <src> <dest> การเรียนการสอนเพิ่มจะคัดลอกไฟล์ใหม่จากและเพิ่มให้ระบบแฟ้มของคอนเทนเนอร์ที่เส้นทาง<src><dest>
2196 docker  dockerfile 

10
ฉันควรใช้ Vagrant หรือ Docker เพื่อสร้างสภาพแวดล้อมแบบแยกหรือไม่? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา ฉันใช้ Ubuntu เพื่อการพัฒนาและการปรับใช้และมีความต้องการในการสร้างสภาพแวดล้อมแบบแยก ฉันกำลังพิจารณา Vagrant หรือ Docker สำหรับวัตถุประสงค์นี้ ข้อดีและข้อเสียคืออะไรหรือเปรียบเทียบโซลูชั่นเหล่านี้อย่างไร
2083 vagrant  docker 

18
คัดลอกไฟล์จากคอนเทนเนอร์ Docker ไปยังโฮสต์
ฉันกำลังคิดที่จะใช้นักเทียบท่าเพื่อสร้างการพึ่งพาของฉันบนเซิร์ฟเวอร์การรวมอย่างต่อเนื่อง (CI) ดังนั้นฉันจึงไม่ต้องติดตั้ง runtimes และไลบรารีทั้งหมดในเอเจนต์ด้วยตนเอง เพื่อให้บรรลุนี้ฉันจะต้องคัดลอกการสร้างสิ่งประดิษฐ์ที่สร้างขึ้นภายในภาชนะกลับเข้าไปในโฮสต์ เป็นไปได้ไหม

14
CMD และ ENTRYPOINT แตกต่างกันอย่างไรใน Dockerfile
ใน Dockerfiles มีสองคำสั่งที่มีลักษณะคล้ายกับฉัน: และCMD ENTRYPOINTแต่ฉันเดาว่ามีความแตกต่าง (บอบบาง?) ระหว่างพวกเขา - ไม่อย่างนั้นคงไม่มีเหตุผลที่จะมีสองคำสั่งสำหรับสิ่งเดียวกัน เอกสารประกอบสำหรับ CMD วัตถุประสงค์หลักของ CMD คือการให้ค่าเริ่มต้นสำหรับคอนเทนเนอร์ที่ดำเนินการ และสำหรับENTRYPOINT: ENTRYPOINT ช่วยให้คุณกำหนดค่าคอนเทนเนอร์ที่คุณสามารถเรียกใช้เป็นปฏิบัติการได้ ดังนั้นความแตกต่างระหว่างสองคำสั่งคืออะไร?
1698 docker 

30
คัดลอกไฟล์จากโฮสต์ไปยังคอนเทนเนอร์ Docker
ฉันกำลังพยายามสร้างโซลูชันสำรองและกู้คืนสำหรับคอนเทนเนอร์ Docker ที่เราทำงานด้วย ฉันมีอิมเมจพื้นฐานที่ฉันสร้างขึ้นubuntu:baseและไม่ต้องการให้สร้างใหม่ทุกครั้งด้วยไฟล์ Docker เพื่อเพิ่มไฟล์ลงไป ฉันต้องการสร้างสคริปต์ที่ทำงานจากเครื่องโฮสต์และสร้างคอนเทนเนอร์ใหม่โดยใช้ubuntu:baseอิมเมจ Docker แล้วคัดลอกไฟล์ไปยังคอนเทนเนอร์นั้น ฉันจะคัดลอกไฟล์จากโฮสต์ไปยังคอนเทนเนอร์ได้อย่างไร

26
จากด้านในของ Docker container ฉันจะเชื่อมต่อกับ localhost ของเครื่องได้อย่างไร
ดังนั้นฉันมี Nginx ที่ทำงานอยู่ภายใน container docker, ฉันมี mysql ที่ทำงานบน localhost, ฉันต้องการเชื่อมต่อ MySql จากภายใน Nginx ของฉัน MySql กำลังทำงานบน localhost และไม่เปิดเผยพอร์ตไปสู่โลกภายนอกดังนั้นมันจึงถูกผูกไว้กับ localhost ไม่ได้ถูกผูกไว้กับที่อยู่ IP ของเครื่อง มีวิธีใดบ้างที่จะเชื่อมต่อกับ MySql นี้หรือโปรแกรมอื่น ๆ บน localhost จากภายใน container docker นี้? คำถามนี้แตกต่างจาก "วิธีรับที่อยู่ IP ของโฮสต์นักเทียบท่าจากภายในคอนเทนเนอร์นักเทียบท่า" เนื่องจากข้อเท็จจริงที่ว่าที่อยู่ IP ของโฮสต์นักเทียบท่าอาจเป็น IP สาธารณะหรือ IP ส่วนตัวในเครือข่ายซึ่งอาจหรืออาจ ไม่สามารถเข้าถึงได้จากภายในคอนเทนเนอร์ของนักเทียบท่า (ฉันหมายถึง IP สาธารณะหากโฮสต์ที่ AWS หรือบางอย่าง) แม้ว่าคุณจะมีที่อยู่ …

30
วิธีรับที่อยู่ IP ของคอนเทนเนอร์ Docker จากโฮสต์
มีคำสั่งที่ฉันสามารถเรียกใช้เพื่อรับที่อยู่ IP ของคอนเทนเนอร์จากโฮสต์หลังจากสร้างคอนเทนเนอร์ใหม่หรือไม่ โดยพื้นฐานแล้วเมื่อนักเทียบท่าสร้างคอนเทนเนอร์ฉันต้องการม้วนการปรับใช้รหัสของตัวเองและสคริปต์การกำหนดค่าคอนเทนเนอร์
1409 docker 

15
วิธีคัดลอกอิมเมจ Docker จากโฮสต์หนึ่งไปยังอีกโฮสต์หนึ่งโดยไม่ต้องใช้ที่เก็บ
ฉันจะถ่ายโอนรูปภาพนักเทียบท่าจากเครื่องหนึ่งไปยังอีกเครื่องหนึ่งได้อย่างไรโดยไม่ต้องใช้ที่เก็บข้อมูลไม่ว่าจะเป็นส่วนตัวหรือสาธารณะ ฉันสร้างภาพของตัวเองใน VirtualBox และเมื่อเสร็จแล้วฉันพยายามปรับใช้กับเครื่องอื่นเพื่อให้มีการใช้งานจริง เนื่องจากมันขึ้นอยู่กับอิมเมจของฉันเอง (เช่น Red Hat Linux) จึงไม่สามารถสร้างขึ้นใหม่ได้จาก Dockerfile dockerfile ของฉันไม่พกพาได้ง่าย มีคำสั่งง่ายๆที่ฉันสามารถใช้ได้หรือไม่? หรือวิธีอื่น
1374 docker 

30
วิธีการลบคอนเทนเนอร์นักเทียบท่าเก่า
คำถามนี้เกี่ยวข้องกับฉันควรจะกังวลเกี่ยวกับคอนเทนเนอร์ Docker ที่มากเกินไปและไม่ทำงานหรือไม่? . ฉันสงสัยว่าจะลบคอนเทนเนอร์เก่าได้อย่างไร docker rm 3e552code34aช่วยให้คุณลบหนึ่งเดียว แต่ฉันมีจำนวนมากอยู่แล้ว docker rm --helpไม่ได้เลือกตัวเลือก (เช่นทั้งหมดหรือตามชื่อภาพ) อาจมีไดเรกทอรีที่จัดเก็บคอนเทนเนอร์เหล่านี้ซึ่งฉันสามารถลบออกได้อย่างง่ายดายด้วยตนเอง?
1235 docker 

25
ฉันจะเข้าสู่เชลล์ของคอนเทนเนอร์ Docker ได้อย่างไร
ฉันเริ่มต้นทำงานกับ Docker ฉันใช้อิมเมจพื้นฐานของ WordPress และเขียนเรียงต่อกัน ฉันพยายามที่จะ ssh เป็นหนึ่งในภาชนะเพื่อตรวจสอบไฟล์ / ไดเรกทอรีที่สร้างขึ้นในช่วงเริ่มต้นสร้าง ฉันพยายามวิ่งdocker-compose run containername ls -laแต่นั่นก็ไม่ได้ทำอะไรเลย แม้ว่ามันจะเป็นเช่นนั้นฉันก็ควรมีคอนโซลที่ฉันสามารถสำรวจโครงสร้างไดเรกทอรีแทนที่จะใช้คำสั่งเดียว วิธีที่ถูกต้องในการทำเช่นนี้กับนักเทียบท่าคืออะไร?

14
วิธีจัดการกับที่จัดเก็บข้อมูลถาวร (เช่นฐานข้อมูล) ใน Docker
ผู้คนจัดการกับที่เก็บข้อมูลถาวรสำหรับคอนเทนเนอร์ Docker ของคุณอย่างไร ขณะนี้ฉันใช้วิธีนี้: สร้างภาพเช่นสำหรับ PostgreSQL แล้วเริ่มคอนเทนเนอร์ด้วย docker run --volumes-from c0dbc34fd631 -d app_name/postgres IMHO ที่มีข้อเสียคือฉันต้องไม่ลบคอนเทนเนอร์ (c0dbc34fd631 "โดยบังเอิญ) (โดยไม่ได้ตั้งใจ) แนวคิดอื่นคือการเมานต์ไดรฟ์ข้อมูลโฮสต์ "-v" ลงในคอนเทนเนอร์อย่างไรก็ตามหมายเลขผู้ใช้ภายในคอนเทนเนอร์ไม่จำเป็นต้องตรงกับหมายเลขผู้ใช้จากโฮสต์และจากนั้นสิทธิ์อาจยุ่งเหยิง หมายเหตุ: แทนที่จะ--volumes-from 'cryptic_id'คุณยังสามารถใช้--volumes-from my-data-containerที่my-data-containerเป็นชื่อที่คุณกำหนดให้เก็บข้อมูลอย่างเดียวเช่นdocker run --name my-data-container ...(ดูคำตอบที่ได้รับการยอมรับ)

14
วิธีแสดงรายการคอนเทนเนอร์ใน Docker
คำตอบของคำถามนี้เป็นความพยายามของชุมชน แก้ไขคำตอบที่มีอยู่เพื่อปรับปรุงโพสต์นี้ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ มีคำสั่งให้กับภาพรายการเป็นแต่มีไม่ดูเหมือนจะเป็นที่สอดคล้องกันdocker imagesdocker containers นอกเหนือจากการรูทและมองเข้าไปที่/var/lib/dockerนั่นดูเหมือนจะไม่มีทางทำเช่นนั้นได้ ฉันพลาดอะไรไปรึเปล่า? นั่นเป็นสิ่งที่เราไม่ควรทำใช่หรือไม่
965 docker 

23
อะไรคือความแตกต่างระหว่างอิมเมจ Docker และคอนเทนเนอร์?
เมื่อใช้นักเทียบท่าเราเริ่มต้นด้วยภาพฐาน เราบูตมันขึ้นสร้างการเปลี่ยนแปลงและการเปลี่ยนแปลงเหล่านั้นจะถูกบันทึกไว้ในเลเยอร์สร้างภาพอื่น ในที่สุดฉันก็มีภาพสำหรับอินสแตนซ์ PostgreSQL ของฉันและรูปภาพสำหรับเว็บแอปพลิเคชันของฉันการเปลี่ยนแปลงที่ยังคงมีอยู่ คอนเทนเนอร์คืออะไร


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.