Я пытаюсь подключить контейнер с tomcat к контейнеру с mysql, чтобы развернуть приложение. Я воспроизвел то же самое в бродячей машине (tomcat 6, mysql 5.6), но теперь я хочу сделать это с помощью докерных контейнеров. Я использовал этот ответ here с некоторыми дополнительными дополнениями. Для контейнера тузд я бегу:Подключить контейнер tomcat к контейнеру mysql
sudo docker run --name mysql -e MYSQL_USER=root -e MYSQL_ROOT_PASSWORD=admin -e MYSQL_DATABASE=my_database_name -d mysql:5.6
Для контейнера Tomcat
docker run -d -p 8080:8080 --name tomcat --link mysql:mysql -v $PWD/webapp:/usr/local/tomcat/webapps tomcat:6
Также я имею папку WebAPP/with_my_app.war. Все идет нормально.
Это конкретное приложение нуждается в некоторой конфигурации в файле WEB-INF/context.xml, поэтому я бегу
docker exec -it tomcat bash
Затем я обновил и установил Vim и, наконец, редактировать файл context.xml и перезапуске кот.
Но я не могу получить доступ к приложение на локальном хосте: 8080/with_my_app
Что мне не хватает?
Возможно, потребуется немного больше информации и любых конкретных ошибок. Для начала, однако, я бы экстернализовал WEB-INF/context.xml с помощью тома, чтобы вы могли отредактировать его за пределами контейнера и убедиться, что он сохраняется через перезагрузки. Затем используйте 'docker exec' из контейнера tomcat, чтобы попытаться выполнить ping/получить доступ к контейнеру MySql. Если вы доберетесь так далеко, это поможет разобраться в том, что вам нужно сделать дальше. – ldg
Какую точку входа вы используете для связи с контейнером mysql из вашего приложения? – GianArb
@Idg Я не знаю, как вытеснить contect.xml, но после перезапуска я проверил его снова, и содержимое сохранялось через перезагрузки. Поэтому я думаю, что это не проблема. Я pingd к db (хороший одно btw) и он работал отлично. – StLia