में स्प्रिंग बूट डीबग करें मैं डॉकर और वारंटी के आधार पर वसंत-बूट परियोजना के लिए विकास पर्यावरण स्थापित करने की कोशिश कर रहा हूं। मैं किसी भी सिस्टम पर डॉकर कंटेनर में प्रोजेक्ट चलाने में सक्षम होने के लिए कोड और योनेंट लिखने के लिए विंडोज़ पर इंटेलिजे का उपयोग कर रहा हूं। मैं मेवेन के साथ परियोजना का निर्माण कर रहा हूँ। वर्तमान में मैं आवृत्ति के माध्यम से वर्चुअलबॉक्स पर उबंटू में चल रहे डॉकर कंटेनर में जार में पैक किए गए एप्लिकेशन को चलाने में सक्षम हूं। मैं यह नहीं समझ सकता कि IntelliJ में अपने एप्लिकेशन को डीबग कैसे करें, मैं रिमोट डीबगिंग के साथ एप्लिकेशन को सही तरीके से शुरू करता हूं, या कम से कम मुझे लगता है कि मैं इसे सही कर रहा हूं) पोर्ट अग्रेषण को कॉन्फ़िगर करें, लेकिन इंटेलिजे अभी भी मुझे "कनेक्शन रीसेट" बताता है और नहीं कर सकता डीबगर से कनेक्ट करें।वानर और डॉकर
यहाँ मेरी 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
और 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
मैं इस और https://spring.io/guides/gs/spring-boot-docker/
की मदद से फ़ाइलों को बनायाइंटेलिजे में मैंने नई रिमोट डीबग कॉन्फ़िगरेशन और 9 081 पर पोर्ट सेट किया। अगर किसी के पास कोई विचार है कि मुझे डीबग मोड में काम करने के लिए इस माहौल को कैसे कॉन्फ़िगर करना चाहिए, तो मुझे किसी भी मदद के लिए खुशी होगी।
यदि मैं अपने ऐप में डीबगर से कनेक्ट करने का प्रबंधन करता हूं, तो मैं कुछ गर्म स्वैप और स्थैतिक संसाधनों को फिर से लोड करना चाहता हूं, बिना मैवेन के पुन: कंपाइल करने और डॉकर को पुनरारंभ करने की आवश्यकता के बिना। तो इस क्षेत्र में कोई भी मदद भी महान होगी लेकिन यह होना जरूरी नहीं है।
मैं लगभग वही काम कर रहा हूं लेकिन मैं अपनी योनि कॉन्फ़िगरेशन में फिक्स आईपी का उपयोग कर रहा हूं, इसलिए मैं इंटेलिजे से मेजबान में आईपी दर्ज कर सकता हूं और यह ठीक काम करता है –
मैंने आईपी को Vagrant_docker_wrapper में इस तरह से तय किया है: config.vm। नेटवर्क "private_network", आईपी: "1 9 2.168.50.4" लेकिन यह चाल नहीं करता है। IntelliJ अभी भी मुझे मिल रहा है "कनेक्शन से इनकार कर दिया: कनेक्ट"। स्थानीयहोस्ट और 1 9 2.168.50.4 – gandalfml