flyway容器的定制使用
flyway
提供了自己的运行容器:
但是这个容器的entrypoint
默认是去执行flyway
的命令,然后就退出。我们需要进入这个容器做一些定制调试的工作就不太方便,所以可以用下面的命令来启动并登录容器:
$ docker run -it --user root --entrypoint '/bin/sh' flyway/flyway
在上面的命令里,我们用--entrypoint
命令来override这个容器自己的脚本,用/bin/sh
来替代。
此外,我们使用--user
选项让docker使用容器的root
账号来进行登录。下面是容器的登录情况:
因为flyway
容器是使用的11-jre-hotspot
这个image做为基础:
我们可以在dockerhub
里面找到adoptopenjdk
这个image:
这个image对应的github项目在这里:
如果有兴趣可以研究。
回到flyway
这个容器,我们可以此时在这个容器里面使用apt-get
命令对linux进行包的更新:
至于为什么判断这个容器是基于ubuntu/debian
的,其实可以猜,试着执行apk
,apk-add
,yum
,dnf
这些常用的包管理工具命令来推测所使用的linux发行版本。
以上是对flyway
容器定制的一个说明。