package main
import (
"context"
docker "docker.io/go-docker"
"docker.io/go-docker/api/types"
"encoding/base64"
"encoding/json"
"fmt"
)
var client docker.Client
func main() {
ctx := context.Background()
var token = <digital_ocean_access_token>
var creds = types.AuthConfig{
Username: token,
Password: token,
ServerAddress: "registry.digitalocean.com/<registry>",
}
_, err = client.ImagePush(ctx,
"registry.digitalocean.com/<registry>/<repo>:<tag>",
types.ImagePushOptions{
RegistryAuth: registryAuth(creds),
})
fmt.Println("stream :::::::::::::::::::::> ", err)
}
func registryAuth(creds types.AuthConfig) string {
b, err := json.Marshal(&creds)
if err != nil {
panic(err)
}
return base64.StdEncoding.EncodeToString(b)
}
我當前的代碼如上:我能夠在注冊表中成功登錄,但是在推送注冊表時我做錯了 main() 呼叫向我顯示了這一點:
stream :::::::::::::::::::::> error during connect: Post "/images/registry.digitalocean.com/<registry>/<repo>/push?tag=<tag>": unsupported protocol scheme ""
uj5u.com熱心網友回復:
go-docker您正在使用的庫已過時,您應該將其替換為較新的庫https://pkg.go.dev/github.com/docker/docker。這將解決您的unsupported scheme issue問題。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/338489.html
