Categorygithub.com/DmitryBogomolov/containerator
module
0.0.0-20240218101811-a38a20220afc
Repository: https://github.com/dmitrybogomolov/containerator.git
Documentation: pkg.go.dev

# README

CI

containerator

core

Functions to work with docker containers.

Several most common and basic operations are supported.

// import "github.com/docker/docker/client"
cli, _ = client.NewEnvClient()

// docker image ls -aq
core.ListAllImageIDs(cli)

// docker ps -aq
core.ListAllContainerIDs(cli)

// docker inspect 8b5a55df88ec
core.FindImageByShortID(cli, "0123456789ab")

// docker inspect 8b5a55df88ec
core.FindContainerByShortID(cli, "0123456789ab")

// docker run -it -d --name my-container-1 --network my-network-1 -v /tmp:/usr/app -p 50001:3000 -e A=1 my-image:1
core.RunContainer(cli, &core.RunContainerOptions{
    Image: "my-image:1",
    Name: "my-container-1",
    RestartPolicy: RestartAlways,
    Network: "my-network-1",
    Volumes: []Mapping{
        {"/tmp", "/usr/app"},
    },
    Ports: []Mapping{
        {"50001", "3000"},
    },
    Env: []Mapping{
        {"A", "1"},
    },
})

manage

Functions to run, suspend, resume, remove containers.

// import "github.com/docker/docker/client"
cli, _ = client.NewEnvClient()

config = &manage.Config{
	ImageName: "my-umage",
	ContainerName: "my-container",
    Network: "my-network",
    Volumes: []core.Mapping{
        // ...
    },
    Ports: []core.Mapping{
        // ...
    },
    Env: []core.Mapping{
        // ...
    },
}

manage.RunContainer(cli, config, &manage.Options{
    Postfix: "dev"
	Tag: "latest",
	EnvFilePath: "./env-dev.list",
})
manage.RunContainer(cli, config, &manage.Options{
    Postfix: "test"
	Tag: "latest",
    Portoffset: 10,
	EnvFilePath: "./env-test.list",
})
manage.RunContainer(cli, config, &manage.Options{
    Postfix: "prod"
	Tag: "2",
    Portoffset: 20,
	EnvFilePath: "./env-prod.list",
})

Examples

# Packages

Package core contains functions to work with docker containers.
No description provided by the author
Package manage contains function to run, suspend, resume, remove containers.