diff options
author | Emile <hanemile@protonmail.com> | 2019-10-07 15:38:26 +0200 |
---|---|---|
committer | Emile <hanemile@protonmail.com> | 2019-10-07 15:38:26 +0200 |
commit | e72b27b7074a0f8a6d5ffebba6de89a94a40a5d0 (patch) | |
tree | 60f9fd54006a2fd4d261810939af8689f84363e4 | |
parent | 21634fcc5a6285ac03bb7551c5da2eae82d38ce3 (diff) |
removed the code returning the accesscode from the spawnCompanion function
-rw-r--r-- | src/docker.go | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/docker.go b/src/docker.go index df89e52..26b0b67 100644 --- a/src/docker.go +++ b/src/docker.go @@ -36,22 +36,31 @@ func setupDockerCLI() (err error) { return err } -func spawnCompanion(username string, accesscode string) string { +func spawnCompanion(username string, accesscode string) { log.Println("Spwaning a new companion container") // setup the context and the docker cli connection setupContext() setupDockerCLI() sessionSalt := generateSessionSalt() + vpnRemoteAddress := "127.0.0.1" + vpnRemotePort := "1193" + + log.Println("Generating the container config") Config := &container.Config{ Image: "circus-companion:latest", Cmd: []string{fmt.Sprintf("-username %s -accesscode %s -sessionSalt %s -vpnRemoteAddress %s -vpnRemotePort %s", username, accesscode, sessionSalt, vpnRemoteAddress, vpnRemotePort)}, + // Container labels used by traefik + Labels: map[string]string{ + "traefik.enable": "true", + "traefik.http.routers.companion.entrypoints": "web", + "traefik.http.routers.companion.rule": "Host(`companion.docker.localhost`)", + "traefik.http.services.companion.loadbalancer.server.port": "8080", + }, } HostConfig := &container.HostConfig{ - // ports (nat.PortMap) - // docker socket Mounts: []mount.Mount{ { Type: mount.TypeBind, @@ -66,16 +75,24 @@ func spawnCompanion(username string, accesscode string) string { }, } + containerNetworkID, err := setupNetwork("circus", true) + NetworkingConfig := &network.NetworkingConfig{ - // network + EndpointsConfig: map[string]*network.EndpointSettings{ + "circus": { + NetworkID: containerNetworkID, + }, + }, } + log.Println("Starting the container") + _, err := dockerCLI.ContainerCreate(dockerCtx, Config, HostConfig, NetworkingConfig, "") if err != nil { panic(err) } - return accesscode + log.Println("Container started") } func generateSessionSalt() string { |