fix OLLAMA_HOST parsing for ip6

This commit is contained in:
Michael Yang 2023-09-20 17:49:48 -07:00
parent ee4fd16f2c
commit 9297ff8330

View file

@ -655,28 +655,19 @@ func generateBatch(cmd *cobra.Command, model string) error {
} }
func RunServer(cmd *cobra.Command, _ []string) error { func RunServer(cmd *cobra.Command, _ []string) error {
host, port := "127.0.0.1", "11434" host, port, err := net.SplitHostPort(os.Getenv("OLLAMA_HOST"))
parts := strings.Split(os.Getenv("OLLAMA_HOST"), ":")
if ip := net.ParseIP(parts[0]); ip != nil {
host = ip.String()
}
if len(parts) > 1 {
port = parts[1]
}
// deprecated: include port in OLLAMA_HOST
if p := os.Getenv("OLLAMA_PORT"); p != "" {
port = p
}
err := initializeKeypair()
if err != nil { if err != nil {
host, port = "127.0.0.1", "11434"
if ip := net.ParseIP(os.Getenv("OLLAMA_HOST")); ip != nil {
host = ip.String()
}
}
if err := initializeKeypair(); err != nil {
return err return err
} }
ln, err := net.Listen("tcp", fmt.Sprintf("%s:%s", host, port)) ln, err := net.Listen("tcp", net.JoinHostPort(host, port))
if err != nil { if err != nil {
return err return err
} }