В рамках проекта Jenkins
вольным стилем я пытаюсь выполнить следующую команду Post Step shell:
curl -X POST -i -F "SimpleTest=@target/surefire-reports/TEST-junitfaq.SimpleTest.xml" 127.0.0.1:9090/
Этот запрос предназначен для следующего простого * Сервер 1007 *:
package main
import (
"fmt"
"github.com/gorilla/mux"
"log"
"net/http"
)
func main() {
router := mux.NewRouter()
router.
Path("/").
Methods("POST").
HandlerFunc(UploadFile)
fmt.Println("Starting...")
log.Fatal(http.ListenAndServe(":9090", router))
}
func UploadFile(w http.ResponseWriter, r *http.Request) {
(w).Header().Set("Access-Control-Allow-Origin", "*")
err := r.ParseForm()
if err != nil {
w.Write([]byte(err.Error()))
return
}
file, _, err := r.FormFile("SimpleTest")
defer file.Close()
if err != nil {
w.Write([]byte(err.Error()))
return
}
bytes := make([]byte, 100)
n, err := file.Read(bytes)
if err != nil {
w.Write([]byte(err.Error()))
return
}
fmt.Printf("%d bytes: %s\n", n, string(bytes[:n]))
}
Сервер Jenkins
и сервер Go
работают в Docker
контейнерах, созданных с использованием следующего файла Docker-compose
:
version: '3'
services:
foobar:
container_name: foobar
image: foobar:latest
hostname: foobar
build:
context: .
dockerfile: Dockerfile
networks:
- foobar-net
ports:
- 9090:9090
labels:
kompose.service.type: LoadBalancer
jenkins:
container_name: jenkins
image: jenkinsci/blueocean
restart: always
hostname: foobar
ports:
- 7070:8080
networks:
- foobar-net
depends_on:
- foobar
links:
- foobar
volumes:
- $PWD/data/jenkins:/var/jenkins_home
networks:
foobar-net:
driver: bridge
Когда я выполнить это задание, команда Curl
завершится неудачно, и мне будет возвращен следующий результат:
curl -X POST -i -F 'SimpleTest=@target/surefire-reports/TEST-junitfaq.SimpleTest.xml' 127.0.0.1:9090/
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (7) Failed to connect to 127.0.0.1 port 9090: Connection refused
Build step 'Execute shell' marked build as failure
В чем может быть проблема, приводящая к отказу моего соединения?