簡體   English   中英

使用 docker-compose 使用 docker 的 IP 尋址錯誤

[英]IP addressing error with docker with docker-compose

我已經使用 docker-compose 在兩個 ubuntu vps 上安裝了兩個相同的 docker。 令人擔憂的是,第一個運行良好,它之間的 pilces 對話,第二個不行。 我看到的是 1 / 中默認設置的 ip 是 172.XXX,而 2 / 中設置的 ip 是 192.XXX 我在原始 vps 上,沒有特定的配置文件......但我不明白這是怎么可能的. 這是 docker-compose

version: '2.4'
services:
  redis:
    image: redis:alpine



 db:
    image: mariadb:10.5
    working_dir: /application
    command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_unicode_ci, --innodb-file-format=Barracuda, --innodb-large-prefix=1, --innodb-file-per-table=1]
    volumes:
      - pimcore-demo-database:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=ROOT
      - MYSQL_DATABASE=pimcore
      - MYSQL_USER=pimcore
      - MYSQL_PASSWORD=pimcore

  php:
    image: pimcore/pimcore:PHP8.0-apache
    volumes:
      - .:/var/www/html:cached
    ports:
     - 80:80
     - 443:443
    environment:
     - APACHE_DOCUMENT_ROOT=/var/www/html/public

  php-debug:
    image: pimcore/pimcore:PHP8.0-apache-debug
    volumes:
      - .:/var/www/html:cached
    ports:
     - 88:80
    environment:
      - PHP_IDE_CONFIG="serverName=localhost"
      - APACHE_DOCUMENT_ROOT=/var/www/html/public

volumes:
  pimcore-demo-database:

先感謝您

嘗試在您的 compose yml 中添加網絡配置以使用特定的 IP,如下所示:

有關https://docs.docker.com/compose/networking/#use-a-pre-existing-network 的更多信息

version: '2.4'
services:
  redis:
    image: redis:alpine

 db:
    image: mariadb:10.5
    working_dir: /application
    command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_unicode_ci, --innodb-file-format=Barracuda, --innodb-large-prefix=1, --innodb-file-per-table=1]
    volumes:
      - pimcore-demo-database:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=ROOT
      - MYSQL_DATABASE=pimcore
      - MYSQL_USER=pimcore
      - MYSQL_PASSWORD=pimcore
    networks:           # <-- Add this line
      - you_own_network # <-- Add this line

  php:
    image: pimcore/pimcore:PHP8.0-apache
    volumes:
      - .:/var/www/html:cached
    ports:
     - 80:80
     - 443:443
    environment:
     - APACHE_DOCUMENT_ROOT=/var/www/html/public
    networks:           # <-- Add this line
      - you_own_network # <-- Add this line

  php-debug:
    image: pimcore/pimcore:PHP8.0-apache-debug
    volumes:
      - .:/var/www/html:cached
    ports:
     - 88:80
    environment:
      - PHP_IDE_CONFIG="serverName=localhost"
      - APACHE_DOCUMENT_ROOT=/var/www/html/public
    networks:           # <-- Add this line
      - you_own_network # <-- Add this line

volumes:
  pimcore-demo-database:

networks:               # <-- Add this block
  you_own_network:
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: 172.123.123.0/24

好的解決方案:

sudo snap remove docker
sudo rm -R /var/lib/docker
sudo apt-get remove docker docker-engine docker.io
sudo apt-get update
https://doc.ubuntu-fr.org/docker
systemctl start docker

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM