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

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

6
ความแตกต่างระหว่างการบันทึกและการส่งออกในนักเทียบท่าคืออะไร
ฉันเล่นกับDockerสักสองสามวันแล้วฉันก็สร้างรูป (ซึ่งสนุกจริงๆ!) ตอนนี้ผมต้องการที่จะยังคงมีอยู่และการทำงานของฉันมาถึงsaveและexportคำสั่ง แต่ผมไม่เข้าใจพวกเขา ความแตกต่างระหว่างsaveและexportในนักเทียบท่าคืออะไร?
157 docker 

11
วิธีเริ่มบริการโดยอัตโนมัติเมื่อเรียกใช้คอนเทนเนอร์นักเทียบท่า?
ฉันมีDockerfileเพื่อติดตั้งเซิร์ฟเวอร์ MySQL ในที่เก็บซึ่งฉันเริ่มต้นเช่นนี้: sudo docker run -t -i 09d18b9a12be /bin/bash แต่บริการ MySQL ไม่เริ่มทำงานโดยอัตโนมัติฉันต้องเรียกใช้ด้วยตนเอง (จากภายในคอนเทนเนอร์): service mysql start ฉันจะเริ่มบริการ MySQL โดยอัตโนมัติเมื่อฉันเรียกใช้คอนเทนเนอร์นักเทียบท่าได้อย่างไร
157 docker 

4
นักเขียน MySQL ข้อมูลถาวร
ฉันไม่สามารถรับข้อมูล MySQL ให้คงอยู่ได้หากฉันทำงาน$ docker-compose downกับสิ่งต่อไปนี้.yml version: '2' services: # other services data: container_name: flask_data image: mysql:latest volumes: - /var/lib/mysql command: "true" mysql: container_name: flask_mysql restart: always image: mysql:latest environment: MYSQL_ROOT_PASSWORD: 'test_pass' # TODO: Change this MYSQL_USER: 'test' MYSQL_PASS: 'pass' volumes_from: - data ports: - "3306:3306" ความเข้าใจของฉันคือว่าในdataภาชนะของฉันโดยใช้volumes: - /var/lib/mysqlแมปไปยังไดเรกทอรีเครื่องท้องถิ่นของฉันที่ mysql เก็บข้อมูลไปยังภาชนะและเนื่องจากการทำแผนที่นี้ข้อมูลควรจะยังคงอยู่แม้ว่าภาชนะจะถูกทำลาย …

4
นักเทียบท่า - คุณจะปิดการใช้งานรีสตาร์ทอัตโนมัติบนภาชนะได้อย่างไร?
ฉันสามารถเปิดใช้งานการรีสตาร์ทอัตโนมัติด้วย--restart=alwaysแต่หลังจากที่ฉันหยุดคอนเทนเนอร์ฉันจะปิดคุณลักษณะนั้นได้อย่างไร ปกติฉันจะเรียกใช้เว็บเซิร์ฟเวอร์และโดยทั่วไปจะแมปพอร์ต 80: docker run -d --restart=always -p 80:80 -i -t myuser/myproj /bin/bash แต่มีบางครั้งที่ฉันต้องการเรียกใช้อิมเมจเวอร์ชันที่ใหม่กว่าของฉัน แต่ฉันต้องการเก็บภาชนะเก่าไว้ ปัญหาคือว่าถ้ามีหลายคอนเทนเนอร์ด้วยมี--restart=alwaysเพียงหนึ่งในนั้นเท่านั้น (สุ่ม?) เริ่มต้นเพราะพวกเขากำลังแข่งขันกันสำหรับพอร์ต 80 บนโฮสต์
156 docker 

9
จะทำให้คอนเทนเนอร์ Docker ทำงานหลังจากเริ่มบริการได้อย่างไร
ฉันได้เห็นแบบฝึกหัดมากมายที่ดูเหมือนจะทำแบบเดียวกันกับที่ฉันพยายามทำ แต่ด้วยเหตุผลบางอย่างที่นักเทียบท่าของฉันออกจากคอนเทนเนอร์ โดยพื้นฐานแล้วฉันกำลังตั้งค่าเว็บเซิร์ฟเวอร์และ daemons สองสามตัวภายในคอนเทนเนอร์ Docker ฉันทำส่วนสุดท้ายของสิ่งนี้ผ่านสคริปต์ทุบตีที่เรียกrun-all.shว่าฉันทำงานผ่าน CMD ใน Dockerfile ของฉัน run-all.shมีลักษณะเช่นนี้: service supervisor start service nginx start และฉันเริ่มมันภายใน Dockerfile ของฉันดังนี้ CMD ["sh", "/root/credentialize_and_run.sh"] ฉันเห็นว่าบริการทั้งหมดเริ่มต้นขึ้นอย่างถูกต้องเมื่อฉันทำงานด้วยตนเอง (เช่นไปยังรูปภาพด้วย -i -t / bin / bash) และทุกอย่างดูเหมือนว่าจะทำงานอย่างถูกต้องเมื่อฉันเรียกใช้รูปภาพ แต่ออกทันที มันเสร็จสิ้นการเริ่มต้นกระบวนการของฉัน ฉันต้องการให้กระบวนการทำงานไปเรื่อย ๆ และเท่าที่ฉันเข้าใจคอนเทนเนอร์ต้องทำงานต่อไปเพื่อให้สิ่งนี้เกิดขึ้น อย่างไรก็ตามเมื่อฉันวิ่งdocker ps -aฉันเห็น: ➜ docker_test docker ps -a CONTAINER ID IMAGE COMMAND …
156 docker 

9
สำรอง / กู้คืนฐานข้อมูล PostgreSQL ที่เชื่อมต่อแล้ว
ฉันพยายามสำรอง / กู้คืนฐานข้อมูล PostgreSQL ตามที่อธิบายไว้ในเว็บไซต์ Docker แต่ข้อมูลไม่ได้รับการกู้คืน ไดรฟ์ข้อมูลที่ใช้โดยอิมเมจฐานข้อมูลคือ: VOLUME ["/etc/postgresql", "/var/log/postgresql", "/var/lib/postgresql"] และ CMD คือ: CMD ["/usr/lib/postgresql/9.3/bin/postgres", "-D", "/var/lib/postgresql/9.3/main", "-c", "config_file=/etc/postgresql/9.3/main/postgresql.conf"] ฉันสร้างคอนเทนเนอร์ DB ด้วยคำสั่งนี้: docker run -it --name "$DB_CONTAINER_NAME" -d "$DB_IMAGE_NAME" จากนั้นฉันเชื่อมต่อคอนเทนเนอร์อื่นเพื่อแทรกข้อมูลด้วยตนเอง: docker run -it --rm --link "$DB_CONTAINER_NAME":db "$DB_IMAGE_NAME" sh -c 'exec bash' psql -d test -h $DB_PORT_5432_TCP_ADDR # insert …

16
การหยุดคอนเทนเนอร์ Docker ด้วยชื่อรูปภาพ - Ubuntu
บน Ubuntu 14.04 (Trusty Tahr) ฉันกำลังมองหาวิธีที่จะหยุดคอนเทนเนอร์ที่รันอยู่และข้อมูลเดียวที่ฉันมีคือชื่อภาพที่ใช้ในคำสั่งเรียกใช้ Docker มีคำสั่งให้ค้นหาคอนเทนเนอร์ที่ทำงานอยู่ที่ตรงกับชื่ออิมเมจนั้นแล้วหยุดหรือไม่?

10
วิธีตั้งชื่อ Dockerfiles
ฉันไม่แน่ใจว่าจะตั้งชื่อ Dockerfiles อย่างไร หลายคนบน GitHub ใช้Dockerfileโดยไม่มีนามสกุลไฟล์ ฉันให้ชื่อและนามสกุลแก่พวกเขาหรือไม่ ถ้ายังไง? หรือฉันเรียกมันว่าDockerfile?

5
จะกำหนดตัวแปรใน Dockerfile ได้อย่างไร?
ในDockerfileของฉันฉันต้องการกำหนดตัวแปรที่ฉันสามารถใช้ใน Dockerfileได้ในภายหลัง ฉันตระหนักถึงENVคำสั่ง แต่ฉันไม่ต้องการให้ตัวแปรเหล่านี้เป็นตัวแปรสภาพแวดล้อม มีวิธีการประกาศตัวแปรที่ขอบเขต Dockerfileหรือไม่?

7
รูปภาพห้อยคืออะไรและรูปภาพที่ไม่ได้ใช้คืออะไร
ในเอกสารนักเทียบท่าของภาพอิมเมจนักเทียบท่ามันเป็นไปได้ที่จะใช้แฟล็ก -a ลบภาพที่ไม่ได้ใช้ทั้งหมดออก และหลังจากนั้น ลบภาพที่ห้อยอยู่ทั้งหมด หากระบุ -a ไว้จะเป็นการลบรูปภาพทั้งหมดที่ไม่ได้อ้างอิงโดยคอนเทนเนอร์ใด ๆ บางคนสามารถอธิบายให้ฉันทราบได้ว่าภาพที่ห้อยอยู่นั้นคืออะไรและอะไรคือความแตกต่างระหว่างภาพที่ห้อยและไม่ได้ใช้
155 docker 

16
นักเทียบท่า“ ข้อผิดพลาด: ไม่สามารถหากลุ่มที่อยู่ IPv4 ที่มีอยู่และไม่ทับซ้อนกันในค่าเริ่มต้นที่จะกำหนดให้กับเครือข่าย”
ฉันมีไดเรกทอรีที่apkmirror-scraper-composeมีโครงสร้างต่อไปนี้: . ├── docker-compose.yml ├── privoxy │ ├── config │ └── Dockerfile ├── scraper │ ├── Dockerfile │ ├── newnym.py │ └── requirements.txt └── tor └── Dockerfile ฉันพยายามที่จะเรียกใช้ต่อไปนี้docker-compose.yml: version: '3' services: privoxy: build: ./privoxy ports: - "8118:8118" links: - tor tor: build: context: ./tor args: password: "" ports: - "9050:9050" …

4
Docker-Swarm, Kubernetes, Mesos & Core-OS Fleet
ฉันค่อนข้างใหม่สำหรับสิ่งเหล่านี้ แต่ฉันมีปัญหาในการรับภาพที่ชัดเจนในเทคโนโลยีที่ระบุไว้ แม้ว่าสิ่งเหล่านี้พยายามที่จะแก้ปัญหาต่าง ๆ แต่ก็มีสิ่งที่เหมือนกันเช่นกัน ฉันต้องการที่จะเข้าใจสิ่งที่เป็นสิ่งที่พบได้ทั่วไปและสิ่งที่แตกต่างกัน เป็นไปได้ว่าการรวมกันของคนจำนวนน้อยจะเป็นแบบที่ดีถ้าเป็นเช่นนั้น ฉันกำลังแสดงรายการคำถามสองสามข้อด้วยกัน แต่จะดีมากถ้ามีคนระบุรายละเอียดทั้งหมดและตอบคำถาม Kubernetes กับ Mesos: ลิงค์นี้ ความแตกต่างระหว่าง Mesos ของ Apache และ Kubernetes ของ Google คืออะไร ให้ข้อมูลเชิงลึกที่ดีเกี่ยวกับความแตกต่าง แต่ฉันไม่สามารถเข้าใจได้ว่าทำไม Kubernetes จึงควรทำงานบน Mesos เป็นเรื่องเกี่ยวกับการรวมตัวกันของสองโซลูชันของโอเพ่นซอร์สหรือไม่ Kubernetes กับ Core-OS Fleet: ถ้าฉันใช้ kubernetes จำเป็นต้องมียานพาหนะหรือไม่ Docker-Swarm เข้ากับสิ่งที่กล่าวมาข้างต้นอย่างไร?

14
ฉันจะสำรองข้อมูล Docker-container ด้วย data-volume ได้อย่างไร
ฉันใช้ภาพนักเทียบท่านี้ word tutum / wordpress นี้เพื่อสาธิตเว็บไซต์ Wordpress เมื่อเร็ว ๆ นี้ฉันพบว่าภาพที่ใช้ไดรฟ์สำหรับข้อมูล MySQL ดังนั้นปัญหาคือ: ถ้าฉันต้องการสำรองและกู้คืนคอนเทนเนอร์ฉันสามารถลองส่งรูปภาพจากนั้นจึงลบคอนเทนเนอร์และสร้างคอนเทนเนอร์ใหม่จากอิมเมจที่กำหนดไว้ แต่ถ้าฉันทำเช่นนั้นปริมาณจะถูกลบและข้อมูลทั้งหมดของฉันจะหายไป ต้องมีวิธีง่ายๆในการสำรองข้อมูลคอนเทนเนอร์ของฉันรวมถึงข้อมูลปริมาณ แต่ฉันไม่สามารถค้นหาได้ทุกที่

22
คอนเทนเนอร์นักเทียบท่าของฉันไม่มีอินเทอร์เน็ต
ฉันทำงานได้ดี แต่ตอนนี้มันหยุดทำงาน ฉันลองใช้คำสั่งต่อไปนี้โดยไม่มีประโยชน์: docker run -dns 8.8.8.8 base ping google.com docker run base ping google.com sysctl -w net.ipv4.ip_forward=1 - ทั้งบนโฮสต์และบนคอนเทนเนอร์ unknown host google.comทั้งหมดที่ฉันได้รับคือ Docker เวอร์ชัน 0.7.0 ความคิดใด ๆ ? ปล. ufwพิการเหมือนกัน
153 docker 

10
อนุญาตให้ docker container เชื่อมต่อกับฐานข้อมูล postgres ในเครื่อง / โฮสต์
ฉันเพิ่งเล่นกับ Docker และ QGIS และได้ติดตั้งคอนเทนเนอร์ตามคำแนะนำในบทช่วยสอนนี้ ทุกอย่างใช้งานได้ดีแม้ว่าฉันจะไม่สามารถเชื่อมต่อกับฐานข้อมูล localhost postgres ที่มีข้อมูล GIS ทั้งหมดของฉัน ฉันคิดว่านี้เป็นเพราะฐานข้อมูล Postgres ของฉันไม่ได้กำหนดค่าให้ยอมรับการเชื่อมต่อระยะไกลและได้รับการแก้ไขไฟล์ postgres conf จะอนุญาตให้เชื่อมต่อระยะไกลโดยใช้คำแนะนำในบทความนี้ ฉันยังคงได้รับข้อความแสดงข้อผิดพลาดเมื่อฉันพยายามเชื่อมต่อกับฐานข้อมูลของฉันที่เรียกใช้ QGIS ใน Docker: ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ได้: Connection refused Is the server running on host "localhost" (::1) and accepting TCP/IP connections to port 5433? เซิร์ฟเวอร์ postgres กำลังทำงานอยู่และฉันได้แก้ไขไฟล์pg_hba.confของฉันเพื่ออนุญาตการเชื่อมต่อจากช่วงของ ที่อยู่ IP (172.17.0.0/32) ก่อนหน้านี้ฉันเคยสอบถามที่อยู่ IP ของคอนเทนเนอร์นักเทียบท่าโดยใช้docker psและแม้ว่าที่อยู่ IP …

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