Вы настроили бы это точно так же, как если бы Docker не участвовал: настройте экземпляр Tomcat с DNS-именем или IP-адресом другого сервера. Вам необходимо убедиться, что служба публикуется за пределами пространства Docker, используя директиву ports:
.
На server-a.example.com
вы можете запустить этот docker-compose.yml
файл:
version: '3'
services:
api:
image: myApi
ports:
- "8810:8810"
env:
DATABASE_URL: "http://server-b.example.com:8012"
И на server-b.example.com
:
version: '3'
services:
db:
image: mydb
ports:
- "8012:8012"
В принципе можно было бы настроить оверлейная сеть , соединяющая два хоста, но это значительно более сложная настройка.
(Вы определенно не хотите использовать docker exec
для изменения /etc/hosts
в контейнере: вам придется повторять этот шаг каждый раз, когда вы удаляете и воссоздаете контейнер, а ручное обслуживание файлов хостов утомительно и приводит к ошибке -Prone, особенно если вы перемещаете контейнеры между хостами. Консул может работать как система обнаружения сервисов, предоставляющая сервис DNS.)
jQuery имеет встроенный метод для этого:
$(window).resize(function () { /* do something */ });
В целях повышения отзывчивости пользовательского интерфейса вы можете рассмотреть возможность использования setTimeout для вызова кода только после некоторого числа миллисекунд, как показано в следующем примере, вдохновленном этим :
function doSomething() {
alert("I'm done resizing for the moment");
};
var resizeTimer;
$(window).resize(function() {
clearTimeout(resizeTimer);
resizeTimer = setTimeout(doSomething, 100);
});
Так как Вы открыты для jQuery, , этот плагин , кажется, добивается цели.
$(window).bind('resize', function () {
alert('resize');
});