Я пытаюсь развернуть приложение весенней загрузки с mysql и отслеживать эту простую архитектуру, используя контейнер cons docker на windows 10. Сначала я добавляю файл bootstrap .yml в папку ресурсов весенней загрузки.
== bootstrap .yml
spring:
profiles: default
cloud:
consul:
host: 192.168.200.51
port: 8500
discovery:
enabled: false
prefer-ip-address: true
healthCheckInterval: 300s
config:
enabled: true
profileSeparator: '::'
format: yaml
fail-fast: false
application:
name: blog-service
И затем я добавляю аннотацию @EnableDiscoveryClient к приложению с загрузочной пружиной, как показано ниже,
@SpringBootApplication
@EnableDiscoveryClient
public class SpringBlogJpaApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBlogJpaApplication.class, args);
}
}
Когда выполняется это весеннее загрузочное приложение, контейнер консул docker успешно распознает блог-сервис. Однако консул-сервер не может обнаружить сервис mysql. Mysql Сервер - это еще один docker контейнер. Поэтому я добавляю файл config. json в контейнер консул сервера docker с консолью docker exe c.
> cd config
> echo "{ \"services\": [ { \"id\": \"mysql\", \"name\": \"mysql 8\", \"tags\": [\"mysql\"], \"address\": \"0.0.0.0\", \"port\": 3306 } ] }" > config.json
Но распознавание mysql в Консуле не удалось. Я понятия не имею, как найти идентификатор и имя процесса mysql вне контейнера docker. И еще я понятия не имею, является ли этот процесс правильным или нет. Контейнеры 3 docker успешно выполнены на windows 10.
> docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
564f0c683d7e gliderlabs/consul-server:latest "/bin/consul agent -…" About an hour ago Up About an hour 8300-8302/tcp, 8400/tcp, 8301-8302/udp, 8600/tcp, 8600/udp, 0.0.0.0:8500->8500/tcp Blog-Consul-Server
6284dd527545 application:latest "java -Dfile.encodin…" About an hour ago Up About an hour 0.0.0.0:8080->8080/tcp Blog-App
1347587f7a62 mysql:latest "docker-entrypoint.s…" About an hour ago Up About an hour 0.0.0.0:3306->3306/tcp, 0.0.0.0:33060->33060/tcp Blog-MySQL
Как можно обнаружить процедуру mysql в контейнере docker на сервере консула docker? Если я использую неправильный процесс, пожалуйста, сообщите мне правильную процедуру.