试试 Web App for Containers 的多容器功能

在 Build 2018 中,Azure App Service 推出了 Web App for Containers 的多容器预览版本。

我原本可以展开单个容器,但是现在似乎可以上传compose或k8s的pod,并部署多个容器。
我想立即尝试一下。

环境准备的中文本地化

创建用于容器的网络应用程序

image.png

准备docker-compose.yml文件

    こんな感じで作りました。
version: '3'

services:
  db:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: wordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress

  wordpress:
    image: wordpress:latest
    ports:
      - "80:80"
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress

请注意compose文件的编写方式!

虽然写着“轻轻松松做好了”,但实际上我多次部署失败了。
可能是因为预览阶段吧,写法中有一些独特的地方。我将列举我遇到的问题。

    • 拡張子は.ymlにしましょう。.yamlだと動きません。

 

    environmentは=ではなく:で繋ぎましょう
MYSQL_USER=wordpress
MYSQL_USER: wordpress
    • depends_onは書いてもいいですが、現時点では動作しません。(そのうちサポートするようです)

 

    • なので、後続処理(ここではmysql)から先に書いています。

 

    今回の例では書いていませんが、commandはリスト形式で書きましょう
command: bundle exec thin -p 3000
command: ["bundle", "exec", "thin", "-p", "3000"]

部署

image.png

我来确认一下是否已经部署了。

image.png

如果部署失败了怎么办?

让我们修改 docker-compose.yml 并重新更新一次。
但是如果频繁上传,有时候会出现无法响应的情况……

概括起来

预览版中有一些令人遗憾的地方,但我觉得Web Apps和Docker这样的搭配似乎非常合适。
似乎还可以使用类似于Swarm等交换机,并且因为基础设施是App Service,所以有一种安心感。
根据系统的不同,可能也会有不需要像AKS这样的编排器的模式吧?

你期待发布吗?

广告
将在 10 秒后关闭
bannerAds