隐约雷鸣 阴霾天空 但盼风雨来 能留你在此

隐约雷鸣 阴霾天空 即使天无雨 我亦留此地

使用docker stack 部署你的服务

《使用docker stack 部署你的服务》

差不多可以抛弃docker-compose了。docker-compose被docker官方定位于开发,而不是部署,docker官方的建议是,使用docker stack 来部署容器

并且docker stack 是原生内置于docker,不需要单独安装,二者之间的差异,可以参照官方文档。当然企业中依然是K8S为主导地位

简单示例

我推荐WordPress的官方文档,写的非常详细,简单明了

docker stack 兼容 V3版本,基本无需修改即可使用

version: '3.1'

services:

  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress:/var/www/html

  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - db:/var/lib/mysql

volumes:
  wordpress:
  db:

-c 指定yml文件,deploy可以换成up

docker stack deploy -c stack.yml wordpress

CLI

root@debian:~# docker stack deploy --help

Usage:	docker stack deploy [OPTIONS] STACK

Deploy a new stack or update an existing stack

Aliases:
  deploy, up

Options:
      --bundle-file string     Path to a Distributed Application Bundle file
  -c, --compose-file strings   Path to a Compose file, or "-" to read
                               from stdin
      --orchestrator string    Orchestrator to use (swarm|kubernetes|all)
      --prune                  Prune services that are no longer referenced
      --resolve-image string   Query the registry to resolve image digest
                               and supported platforms
                               ("always"|"changed"|"never") (default "always")
      --with-registry-auth     Send registry authentication details to
                               Swarm agents

初始化

第一次使用docker stack需要初始化

docker swarm init
this node is not a swarm manager. Use "docker swarm init" or "docker swarm join" to connect this node to swarm and try again
点赞

可以不需要填写邮箱(仅回复通知)和昵称直接评论,评论将在审核后通过

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据