Ich habe eine einfache Docker-compose.yml (wp Bild basiert auf ibmjstart/wp-Bluemix-Container, db Bild ist MariaDB)Wordpress kann nicht mysql Container verknüpft auf IBM Bluemix mit Docker komponieren
db:
image: registry.eu-gb.bluemix.net/foo/db
environment:
MYSQL_ROOT_PASSWORD: examplepass
ports:
- 3306:3306
volumes:
- /var/lib/mysql
wp:
image: registry.eu-gb.bluemix.net/foo/wp
links:
- db:mysql
ports:
- 80:80
siehe
nach docker compose up -d
Ausführung ich
error: missing WORDPRESS_DB_HOST and MYSQL_PORT_3306_TCP environment variables
Did you forget to --link some_mysql_container:mysql or set an external db
with -e WORDPRESS_DB_HOST=hostname:port?
Wie Sie sehen können, ist der db Container verknüpft.
Wenn ich das gleiche tun, ohne Docker-compose,
mit gut funktioniert$ cf ic run -v mysql-vol:/var/lib/mysql --name wpdb -d registry.eu-gb.bluemix.net/foo/db
$ cf ic run -e MYSQL_ROOT_PASSWORD=my-secret-pw -v web-files:/var/www/html/ --link wpdb:mysql -d registry.eu-gb.bluemix.net/foo/wp
Alles.
ich Export Docker Variablen nach cf ic login
Weitere Informationen:
[email protected]:~/test/compose# docker-compose --version
docker-compose version 1.7.0, build 0d7bf73
[email protected]:~/test/compose# docker --version
Docker version 1.10.3, build 20f81dd
[email protected]:~/test/compose# cf --version
cf version 6.15.0+fa1bfe2-2016-01-13
[email protected]:~/test/compose# cf ic --version
Docker version 1.10.3, build 20f81dd
UPDATE: Wie ich verstehe, wird dieses Problem durch die Namensgebung verursacht:
Diese docker-compose.yml gibt einen Fehler aus
db:
image: registry.eu-gb.bluemix.net/foo/db
environment:
MYSQL_ROOT_PASSWORD: examplepass
container_name:
wpdb
ports:
- 3306:3306
volumes:
- /var/lib/mysql
wp:
image: registry.eu-gb.bluemix.net/foo/wp
links:
- wpdb:mysql
ports:
- 80:80
FEHLER: Dienst "wp" hat eine Verbindung zum Dienst "wpdb", der nicht existiert.
Wenn Sie jedoch den Service und den Container gleich benennen, ist die Syntax in Ordnung.
db:
image: registry.eu-gb.bluemix.net/foo/db
environment:
MYSQL_ROOT_PASSWORD: examplepass
container_name:
db
ports:
- 3306:3306
volumes:
- /var/lib/mysql
wp:
image: registry.eu-gb.bluemix.net/foo/wp
links:
- db:mysql
ports:
- 80:80
Obwohl die Syntax in Ordnung ist und der Behälter verbunden ist, die Wordpress-Container protokolliert diese
Warning: mysqli::mysqli(): (HY000/2002): php_network_getaddresses: getaddrinfo failed: Name or service not known in - on line 10
MySQL Connection Error: (2002) php_network_getaddresses: getaddrinfo failed: Name or service not known
Ist das ein Fehler in Bluemix? Sieht aus wie ein/etc/hosts/verwandtes Problem
Sorry für einen langen Beitrag :)
Könnten Sie bitte lassen Sie mich die Umgebung kennen Sie Ihre Container laufen? 'cf ic info | grep Umwelt –
@AlexdaSilva 'Umgebungsname: prod-lon02-vizio1' – bartimar