1
0
mirror of https://github.com/bingohuang/docker-labs.git synced 2025-10-04 17:33:21 +08:00

Use docker 1.13 to allow overlay networks

- Print error if resizing fails
This commit is contained in:
Marcos Lilljedahl
2016-11-13 01:09:29 -03:00
parent b37f2469c8
commit 54378862b3
5 changed files with 19 additions and 9 deletions

View File

@@ -1,6 +1,10 @@
package services
import "github.com/googollee/go-socket.io"
import (
"log"
"github.com/googollee/go-socket.io"
)
type ViewPort struct {
Rows uint
@@ -41,7 +45,10 @@ func NewClient(so socketio.Socket, session *Session) *Client {
// Resize all terminals in the session
wsServer.BroadcastTo(session.Id, "viewport resize", vp.Cols, vp.Rows)
for _, instance := range session.Instances {
instance.ResizeTerminal(vp.Cols, vp.Rows)
err := instance.ResizeTerminal(vp.Cols, vp.Rows)
if err != nil {
log.Println("Error resizing terminal", err)
}
}
})
so.On("disconnection", func() {

View File

@@ -27,7 +27,7 @@ func GetContainerInfo(id string) (types.ContainerJSON, error) {
}
func CreateNetwork(name string) error {
opts := types.NetworkCreate{}
opts := types.NetworkCreate{Driver: "overlay", Attachable: true}
_, err := c.NetworkCreate(context.Background(), name, opts)
if err != nil {

View File

@@ -39,11 +39,10 @@ func getDindImageName() string {
func NewInstance(session *Session) (*Instance, error) {
log.Printf("NewInstance - using image: [%s]\n", dindImage)
instance, err := CreateInstance(session.Id, dindImage)
instance.Session = session
if err != nil {
return nil, err
}
instance.Session = session
if session.Instances == nil {
session.Instances = make(map[string]*Instance)
@@ -66,8 +65,8 @@ func (s *sessionWriter) Write(p []byte) (n int, err error) {
return len(p), nil
}
func (i *Instance) ResizeTerminal(cols, rows uint) {
ResizeExecConnection(i.ExecId, i.Ctx, cols, rows)
func (i *Instance) ResizeTerminal(cols, rows uint) error {
return ResizeExecConnection(i.ExecId, i.Ctx, cols, rows)
}
func (i *Instance) Exec() {

View File

@@ -42,7 +42,7 @@ func init() {
}
func CreateWSServer() *socketio.Server {
server, err := socketio.NewServer(nil)
server, err := socketio.NewServer([]string{"websocket", "polling"})
if err != nil {
log.Fatal(err)
}