PlanNie można połączyć pojemnik MySQL do kontenera Tomcat w dokowanym
chcę mój serwer Tomcat, aby móc połączyć się z serwerem MySQL, zarówno w oddzielnych pojemnikach.
Problem
Tomcat nie może połączyć się z MySQL
Kiedyś niektóre szczegóły z wordpress tutorial o utworzenie powiązania z pojemnika mysql i stworzył link do MySQL.
Mimo, że tomcat i mysql są w porządku, nie mogę uzyskać tomcat, aby móc połączyć się z MySQL, ustawienia działają na mojej lokalnej maszynie doskonale.
Próbowałem również użyć --net: "host"
, chociaż to nie działa z Tomcat, ponieważ powoduje poważne błędy.
poprzednich odpowiedzi
I noticed on this post a load możliwych poprawek do błędu, choć nie wierzę, że każdy z nich przekłada się na mój problem, jak wierzę, jest to nie problem, doker gospodarzem jeden.
doker-compose.yml
web:
image: tomcat:7.0
container_name: tomcat-container
ports:
- "80:8080"
hostname: docker-tomcat
volumes:
- /home/webapps:/usr/local/tomcat/webapps
links:
- db
db:
image: mysql
container_name: mysql-container
environment:
MYSQL_ROOT_PASSWORD: Mysqlpassword1
MYSQL_DATABASE: tracker
volumes:
- /home/mysqlDB:/var/lib/mysql
To mój Context.xml from tomcat.
<Context>
<Resource
name="jdbc/tracker" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
url="jdbc:mysql://localhost:3306/tracker?useSSL=false"
driverClassName="com.mysql.jdbc.Driver"
username="root" password="mysqladmin1"
/>
<Resource
name="jdbc/jenkins" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
url="jdbc:mysql://localhost:3306/jenkins?useSSL=false"
driverClassName="com.mysql.jdbc.Driver"
username="root" password="mysqladmin1"
/>
</Context>
Kod błędu.
Czy to możliwe, zrobić coś takiego jak '- db: localhost', więc nie muszę zmieniać go z ustawień programistycznych na ustawienia wdrażania? W przeciwnym razie bardzo dziękuję, spróbuję go krótko. – jackdh
Nigdy nie próbuję używać localhost. Myślę, że localhost jest słowem kluczowym. Możesz spróbować, może być localhost, ale myślę, że nie powinieneś. – Thibaut
W rzeczywistości, myślę, że powinieneś nadal używać "my-mysql-server" w twoim oknie dokowanym i na komputerze i zmieniać na swoim komputerze, aby dodać ten wpis do lokalnego dns (/ etc/hosts). – Thibaut