15370: Fix unspecified docker API version requirement.
[arvados.git] / cmd / arvados-package / install.go
index b0a87ba3ba00dd519e0547a7f4db276d9958bdb1..437a1ad21bf43f60c054da1f256c09d4f0e4e84a 100644 (file)
@@ -85,9 +85,24 @@ rm /etc/apt/sources.list.d/arvados-local.list
                versionsuffix = "=" + opts.PackageVersion
        }
        cmd := exec.CommandContext(ctx, "docker", "run", "--rm",
-               "--tmpfs", "/tmp:exec,mode=01777",
-               "-v", absPackageDir+":/pkg:ro",
-               "--env", "DEBIAN_FRONTEND=noninteractive",
+               "--tmpfs=/tmp:exec,mode=01777",
+               "--volume="+absPackageDir+":/pkg:ro",
+               "--env=DEBIAN_FRONTEND=noninteractive")
+       if opts.Live != "" {
+               cmd.Args = append(cmd.Args,
+                       "--env=domain="+opts.Live,
+                       "--env=bootargs=",
+                       "--publish=:443:443",
+                       "--publish=:4440-4460:4440-4460",
+                       "--publish=:9000-9020:9000-9020",
+                       "--add-host="+opts.Live+":0.0.0.0",
+                       "--volume=/var/lib/acme:/var/lib/acme:ro")
+       } else {
+               cmd.Args = append(cmd.Args,
+                       "--env=domain=localhost",
+                       "--env=bootargs=-shutdown")
+       }
+       cmd.Args = append(cmd.Args,
                depsImageName,
                "bash", "-c", `
 set -e -o pipefail
@@ -106,8 +121,8 @@ eatmydata apt-get install --reinstall -y --no-install-recommends arvados-server-
 SUDO_FORCE_REMOVE=yes apt-get autoremove -y
 
 /etc/init.d/postgresql start
-arvados-server init -cluster-id x1234
-exec arvados-server boot -listen-host 0.0.0.0 -shutdown
+arvados-server init -cluster-id x1234 -domain=$domain -login=test -insecure
+exec arvados-server boot -listen-host=0.0.0.0 -no-workbench2=false $bootargs
 `)
        cmd.Stdout = stdout
        cmd.Stderr = stderr
@@ -119,7 +134,7 @@ exec arvados-server boot -listen-host 0.0.0.0 -shutdown
 }
 
 func dockerImageExists(ctx context.Context, name string) (bool, error) {
-       cli, err := client.NewEnvClient()
+       cli, err := client.NewClient(client.DefaultDockerHost, "1.21", nil, nil)
        if err != nil {
                return false, err
        }