Sto provando a configurare l'ambiente di sviluppo per il progetto di avvio a molla basato su finestra mobile e vagabondo. Sto usando IntelliJ in esecuzione su Windows per scrivere codice e vagabondo per essere in grado di eseguire il progetto in contenitori docker su qualsiasi sistema. Sto costruendo un progetto con Maven. Attualmente sono in grado di eseguire l'applicazione pacchettizzata in un contenitore docker in esecuzione su Ubuntu su virtualbox via vagabondo. Non riesco a capire come eseguire il debug della mia applicazione in IntelliJ, avviare l'applicazione con debug remoto, correttamente (o almeno credo di farlo correttamente) configurare il port forwarding, ma IntelliJ mi dice ancora "Connection reset" e non posso connettersi al debugger.avvio a molla di debug in vagabondo e finestra mobile
Ecco il mio Dockerfile:
FROM java:8
VOLUME /tmp
ADD test-1.0-SNAPSHOT.jar app.jar
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-Xdebug -Xrunjdwp:server=y,transport=dt_socket,suspend=n,address=8000", "-jar", "/app.jar"]
Vagrantfile:
ENV['VAGRANT_DEFAULT_PROVIDER'] = 'docker'
Vagrant.configure("2") do |config|
config.vm.define "app" do |a|
a.vm.provider "docker" do |d|
d.vagrant_machine = "dockerhost"
d.vagrant_vagrantfile = "./Vagrant_docker_wrapper"
d.build_dir = "."
d.build_args = ["-t=app"]
d.ports = ["8080:8080", "8000:8000"]
d.name = "app"
d.remains_running = true
d.has_ssh = true
d.cmd = ["run"]
end
end
end
E Vagrant_docker_wrapper:
Vagrant.configure("2") do |config|
config.vm.provision "docker"
config.vm.provision "shell", inline: "ps aux | grep 'sshd:' | awk '{print $2}' | xargs kill"
config.vm.define "dockerhost"
config.vm.box = "ubuntu/trusty64"
config.vm.network "forwarded_port", guest: 8080, host: 9080
config.vm.network "forwarded_port", guest: 8000, host: 9081
config.vm.provider :virtualbox do |vb|
vb.name = "dockerhost"
end
end
Ho creato questo file con l'aiuto di http://blog.zenika.com/2014/10/07/Setting-up-a-development-environment-using-Docker-and-Vagrant/ e https://spring.io/guides/gs/spring-boot-docker/
In IntelliJ ho aggiunto una nuova configurazione di debug remoto e impostato la porta su 9081. Se qualcuno ha qualche idea su come dovrei configurare questo ambiente affinché funzioni in modalità di debug, sarò lieto di ricevere aiuto.
Se riesco a collegarmi con il debugger alla mia app, voglio anche avere alcune hot swap e risorse statiche ricaricare la funzionalità senza dover ricompilare con Maven e riavviare la finestra mobile. Quindi qualsiasi aiuto in quest'area sarà grande ma non è necessario.
Sto facendo quasi la stessa cosa ma sto usando l'IP di correzione nella mia configurazione vagabonda così posso inserire l'IP nell'host da IntelliJ e funziona bene –
Ho risolto l'ip in Vagrant_docker_wrapper in questo modo: config.vm. network "private_network", ip: "192.168.50.4" ma non fa il trucco. IntelliJ mi sta ancora ricevendo "Connessione rifiutata: connetti". Su entrambi localhost e 192.168.50.4 – gandalfml