o

izumi.distage.docker.bundled

PostgresFlyWayDocker

object PostgresFlyWayDocker extends ContainerDef

Example postgres docker with flyway. It's sufficient to apply simple migrations on start. You're encouraged to use this definition as a template and modify it to your needs.

Linear Supertypes
ContainerDef, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PostgresFlyWayDocker
  2. ContainerDef
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. final case class Cfg(flyWaySqlPath: String = Cfg.defaultMigrationsResource, user: String = "postgres", password: String = "postgres", database: String = "postgres", schema: String = "public") extends Product with Serializable

    flyWaySqlPath

    path to the migrations directory, by default /sql in current resource directory if exists

  2. final type Config = ContainerConfig[Tag]
    Definition Classes
    ContainerDef
  3. final type Container = DockerContainer[Tag]
    Definition Classes
    ContainerDef
  4. abstract type Tag
    Definition Classes
    ContainerDef

Value Members

  1. final lazy val Config: ContainerConfig.type
    Definition Classes
    ContainerDef
  2. def applyCfg(cfg: Cfg): (Config) => Config
  3. def config: Config
    Definition Classes
    PostgresFlyWayDockerContainerDef
  4. final def copy(config: Config): Aux[Tag]
    Definition Classes
    ContainerDef
  5. final def make[F[_]](implicit arg0: distage.TagK[F], tag: distage.Tag[Tag], mutateModule: model.definition.dsl.ModuleDefDSL.MutationContext): Functoid[ContainerResource[F, Tag] with Lifecycle[F, Container]]

    For binding in ModuleDef:

    For binding in ModuleDef:

    object KafkaDocker extends ContainerDef
    object ZookeeperDocker extends ContainerDef
    
    make[KafkaDocker.Container].fromResource {
      KafkaDocker
        .make[F]
        .dependOnContainer(ZookeeperDocker)
    }

    To kill all containers spawned by distage, use the following command:

    docker rm -f $(docker ps -q -a -f 'label=distage.type')
    Definition Classes
    ContainerDef
  6. val primaryPort: DockerPort
  7. object Cfg extends Serializable
  8. object FlyWay extends ContainerDef
  9. object FlyWayNetwork extends ContainerNetworkDef