เวิร์กโฟลว์นักเทียบท่าสำหรับการรัน mysql และ phpmyadmin?

ฉันยังใหม่กับการใช้ PHPMyAdmin ใน docker ดังนั้นฉันจึงสามารถเรียกใช้คอนเทนเนอร์สำหรับ MySQL และ PHPMyAdmin ได้ แต่หลังจากรีสตาร์ทคอมพิวเตอร์ คอนเทนเนอร์ทั้งสองก็ออกจากระบบ

ฉันพยายามเรียกใช้ docker-compose up -d อีกครั้งในไดเร็กทอรีที่มี dockerfile ของฉัน แต่ฉันได้รับข้อผิดพลาดเหล่านี้:

Error starting userland proxy: listen tcp 0.0.0.0:3306: bind: address already in use

Error starting userland proxy: listen tcp 0.0.0.0:8080: bind: address already in use

หลังจากนี้ ฉันลองใช้ docker-compose down ซึ่งจะลบทั้งสองคอนเทนเนอร์ออก แต่ docker-compose up ยังคงไม่สามารถรีสตาร์ททั้งสองคอนเทนเนอร์ได้เนื่องจากข้อผิดพลาดเหล่านี้

ฉันยังลองโทร sudo kill -9 PID บนกระบวนการ MySQL ที่ทำงานบนพอร์ต 3306 แต่ทุกครั้งที่ฉันเรียกมัน ก็ยังคงมีกระบวนการทำงานบนพอร์ตนั้น

สิ่งที่สามที่ฉันลองคือ docker-compose rm และลบคอนเทนเนอร์เหล่านี้ออกก่อนที่จะรัน docker-compose up -d อีกครั้ง รวมถึงการรีสตาร์ท docker-compose แต่ฉันยังคงพบข้อผิดพลาดนี้

มีวิธีที่เหมาะสมในการรีสตาร์ทคอนเทนเนอร์ที่ฉันใช้หรือไม่ หรือฉันเข้าใจผิดมาตรฐานสำหรับการรันคอนเทนเนอร์นักเทียบท่า?

แก้ไข: นี่คือ docker-compose.yaml ของฉัน:

version: "3.7"
services:
  mysql-server:
    image: mysql:8.0.19
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: secret
    volumes:
      - mysql-data:/var/lib/mysql
    ports:
      - "3306:3306"
   
  phpmyadmin:
    image: phpmyadmin/phpmyadmin:5.0.1
    restart: always
    environment:
      PMA_HOST: mysql-server
      PMA_USER: root
      PMA_PASSWORD: secret
    ports:
      - "8080:80"
volumes:
  mysql-data:

person Anonymous    schedule 13.08.2020    source แหล่งที่มา
comment
คุณลองรัน docker-compose down ในไดเร็กทอรีโปรเจ็กต์ของคุณแล้วลองอีกครั้งได้ไหม   -  person kabirbaidhya    schedule 13.08.2020
comment
ฉันได้ลองแล้ว แต่ยังคงได้รับข้อผิดพลาดเหล่านี้   -  person Anonymous    schedule 13.08.2020
comment
ข้อผิดพลาดนั้นหมายความว่ามีอย่างอื่นบนโฮสต์ที่ใช้พอร์ตนี้อยู่แล้ว นั่นอาจเป็นการตั้งค่า Docker อื่นหรือการติดตั้ง MySQL ที่ทำงานบนโฮสต์โดยตรง คุณสามารถเปลี่ยนหมายเลข แรก ของ ports: เพื่อเลือกพอร์ตโฮสต์อื่น (ปล่อยให้หมายเลขที่สองเหมือนเดิม) การเชื่อมโยงข้อผิดพลาดนักเทียบท่า: ที่อยู่ที่ใช้งานอยู่แล้ว มีเคล็ดลับการแก้ไขจุดบกพร่องอื่นๆ   -  person David Maze    schedule 13.08.2020