當我執行xdcomp_my_sql_client命令時,它會ping ip,但是當它試圖到達mysql服務器時,它會失敗。如果我在容器運行時執行完全相同的命令,它就可以工作。似乎mysql命令執行的時候沒有運行。但是我使用了「depends_on」命令,所以我做錯了什麼?在docker-compose中執行mysql命令時出錯
謝謝。
version: '2'
services:
xdcomp_my_sql_server:
image: mysql/mysql-server:latest
environment:
MYSQL_ROOT_PASSWORD: diego
MYSQL_USER: otro
MYSQL_PASSWORD: otro
MYSQL_ROOT_HOST: 172.28.0.101
networks:
SQLNetwork:
ipv4_address: 172.28.0.102
xdcomp_my_sql_client:
build: .
command: sh -c 'ping -c 5 172.28.0.102 && mysql -h 172.28.0.102 -u root -pdiego sys < /lafayette/forensic.sql && tail -f /etc/hostname'
ports:
- 83:80
networks:
SQLNetwork:
ipv4_address: 172.28.0.101
depends_on:
- xdcomp_my_sql_server
networks:
SQLNetwork:
driver: "bridge"
ipam:
config:
- subnet: 172.28.0.0/24
gateway: 172.28.0.201
客戶Dockerfile
FROM ubuntu:16.04
RUN apt-get update
RUN apt-get install -y mysql-client
RUN apt-get install -y git
RUN git clone https://github.com/linkedin/lafayette
RUN apt-get update
RUN apt-get install -y python-dnspython
RUN apt-get install -y python-pip
RUN pip install Flask
RUN pip install python-dateutil
RUN apt-get install -y python-mysqldb
RUN pip install requests
RUN pip install multiprocessing
RUN pip install multiprocess
RUN apt-get install -y vim
RUN apt-get -y install iputils-ping
謝謝你,我現在明白爲什麼我錯在這樣做的連接。但我仍然有問題想要做我想做的事情。一旦docker-compose爲這兩個容器運行,我想從客戶端容器上傳一個數據庫到服務器容器。我在docker-compose:命令中嘗試了以下命令:sh -c'ping -c 5 172.28.0.102 && mysql -h 172.28.0.102 -u root -ppass sys
在我執行命令時,似乎mysql服務器沒有運行。 –