stack-1.0.4.3: The Haskell Tool Stack

Safe HaskellNone
LanguageHaskell2010

Stack.Types.Docker

Description

Docker types.

Synopsis

Documentation

data DockerOpts Source

Docker configuration.

Constructors

DockerOpts 

Fields

dockerEnable :: !Bool

Is using Docker enabled?

dockerImage :: !String

Exact Docker image tag or ID. Overrides docker-repo-*/tag.

dockerRegistryLogin :: !Bool

Does registry require login for pulls?

dockerRegistryUsername :: !(Maybe String)

Optional username for Docker registry.

dockerRegistryPassword :: !(Maybe String)

Optional password for Docker registry.

dockerAutoPull :: !Bool

Automatically pull new images.

dockerDetach :: !Bool

Whether to run a detached container

dockerPersist :: !Bool

Create a persistent container (don't remove it when finished). Implied by dockerDetach.

dockerContainerName :: !(Maybe String)

Container name to use, only makes sense from command-line with dockerPersist or dockerDetach.

dockerRunArgs :: ![String]

Arguments to pass directly to docker run.

dockerMount :: ![Mount]

Volumes to mount in the container.

dockerEnv :: ![String]

Environment variables to set in the container.

dockerDatabasePath :: !(Path Abs File)

Location of image usage database.

dockerStackExe :: !(Maybe DockerStackExe)

Location of container-compatible stack executable

dockerSetUser :: !(Maybe Bool)

Set in-container user to match host's

dockerRequireDockerVersion :: !VersionRange

Require a version of Docker within this range.

data DockerOptsMonoid Source

An uninterpreted representation of docker options. Configurations may be "cascaded" using mappend (left-biased).

Constructors

DockerOptsMonoid 

Fields

dockerMonoidDefaultEnable :: !Bool

Should Docker be defaulted to enabled (does docker: section exist in the config)?

dockerMonoidEnable :: !(Maybe Bool)

Is using Docker enabled?

dockerMonoidRepoOrImage :: !(Maybe DockerMonoidRepoOrImage)

Docker repository name (e.g. fpco/stack-build or fpco/stack-full:lts-2.8)

dockerMonoidRegistryLogin :: !(Maybe Bool)

Does registry require login for pulls?

dockerMonoidRegistryUsername :: !(Maybe String)

Optional username for Docker registry.

dockerMonoidRegistryPassword :: !(Maybe String)

Optional password for Docker registry.

dockerMonoidAutoPull :: !(Maybe Bool)

Automatically pull new images.

dockerMonoidDetach :: !(Maybe Bool)

Whether to run a detached container

dockerMonoidPersist :: !(Maybe Bool)

Create a persistent container (don't remove it when finished). Implied by dockerDetach.

dockerMonoidContainerName :: !(Maybe String)

Container name to use, only makes sense from command-line with dockerPersist or dockerDetach.

dockerMonoidRunArgs :: ![String]

Arguments to pass directly to docker run

dockerMonoidMount :: ![Mount]

Volumes to mount in the container

dockerMonoidEnv :: ![String]

Environment variables to set in the container

dockerMonoidDatabasePath :: !(Maybe String)

Location of image usage database.

dockerMonoidStackExe :: !(Maybe String)

Location of container-compatible stack executable

dockerMonoidSetUser :: !(Maybe Bool)

Set in-container user to match host's

dockerMonoidRequireDockerVersion :: !VersionRange

See: dockerRequireDockerVersion

Instances

Show DockerOptsMonoid Source 
Monoid DockerOptsMonoid Source

Left-biased combine Docker options

FromJSON (WithJSONWarnings DockerOptsMonoid) Source

Decode uninterpreted docker options from JSON/YAML.

data DockerStackExe Source

Where to get the stack executable to run in Docker containers

Constructors

DockerStackExeDownload

Download from official bindist

DockerStackExeHost

Host's stack (linux-x86_64 only)

DockerStackExeImage

Docker image's stack (versions must match)

DockerStackExePath (Path Abs File)

Executable at given path

data Mount Source

Docker volume mount.

Constructors

Mount String String 

Instances

Read Mount Source

For optparse-applicative.

Show Mount Source

Show instance.

FromJSON Mount Source

For YAML.

data DockerMonoidRepoOrImage Source

Options for Docker repository or image.

newtype VersionRangeJSON Source

Newtype for non-orphan FromJSON instance.

Instances

FromJSON VersionRangeJSON Source

Parse VersionRange.

dockerEnableArgName :: Text Source

Docker enable argument name.

dockerRepoArgName :: Text Source

Docker repo arg argument name.

dockerImageArgName :: Text Source

Docker image argument name.

dockerRegistryLoginArgName :: Text Source

Docker registry login argument name.

dockerRegistryUsernameArgName :: Text Source

Docker registry username argument name.

dockerRegistryPasswordArgName :: Text Source

Docker registry password argument name.

dockerAutoPullArgName :: Text Source

Docker auto-pull argument name.

dockerDetachArgName :: Text Source

Docker detach argument name.

dockerRunArgsArgName :: Text Source

Docker run args argument name.

dockerMountArgName :: Text Source

Docker mount argument name.

dockerEnvArgName :: Text Source

Docker environment variable argument name.

dockerContainerNameArgName :: Text Source

Docker container name argument name.

dockerPersistArgName :: Text Source

Docker persist argument name.

dockerDatabasePathArgName :: Text Source

Docker database path argument name.

dockerStackExeArgName :: Text Source

Docker database path argument name.

dockerStackExeDownloadVal :: String Source

Value for --docker-stack-exe=download

dockerStackExeHostVal :: String Source

Value for --docker-stack-exe=host

dockerStackExeImageVal :: String Source

Value for --docker-stack-exe=image

dockerSetUserArgName :: Text Source

Docker set-user argument name

dockerRequireDockerVersionArgName :: Text Source

Docker require-version argument name

dockerEntrypointArgName :: String Source

Argument name used to pass docker entrypoint data (only used internally)