加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

docker-使用Yaml文件配置运行Kubectl

发布时间:2020-12-16 03:24:46 所属栏目:安全 来源:网络整理
导读:还有一个类似的问题here,但我想我想要不同的东西. 对于那些熟悉docker-compose的人来说,有个很棒的命令可以在容器中运行一次命令,这对于在每次部署之前启动迁移都非常有帮助: docker-compose -f docker-compose.prod.yml run web npm run migrate 另外,因为

还有一个类似的问题here,但我想我想要不同的东西.
对于那些熟悉docker-compose的人来说,有个很棒的命令可以在容器中运行一次命令,这对于在每次部署之前启动迁移都非常有帮助:

docker-compose -f docker-compose.prod.yml run web npm run migrate

另外,因为这是一个单行命令,所以可以轻松实现自动化:例如使用Makefile或ansible / chef / saltstack.

我发现的唯一东西是kubectl run,它与docker run更相似.但是docker-compose run允许我们使用配置文件,而docker-run不允许:

 kubectl run rp2migrate --command -- npm run migrate

这可能会起作用,但是我需要列出20个环境变量,并且确实不想在命令行中执行此操作.相反,我想传递一个标志来指定yaml config,如下所示:

 kubectl run rp2migrate  -f k8s/rp2/rp2-deployment.yaml --command -- npm run migrate
最佳答案
编辑:

Kubernetes也将init容器作为beta功能(截至目前)-http://kubernetes.io/docs/user-guide/production-pods/#handling-initialization

您可能应该利用Kubernetes PostStart挂钩.如下所示:

lifecycle:
  postStart:
    exec:
      command:
      - "npm"
      - "run"
      - "migrate"

http://kubernetes.io/docs/user-guide/container-environment/

为您的Pod指定的环境变量也将可用:

Additionally,user-defined environment variables from the pod definition,are also available to the container,as are any environment variables specified statically in the Docker image

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读