devlog

Nomad 初心者が nginx のコンテナを立ててみた

2024-02-16

HashiCorp Nomad で Nginx のコンテナを立ててみました。
入門したてです。信用しないでください。

Version

$ nomad -version Nomad v1.7.3 BuildDate 2024-01-15T16:55:40Z Revision 60ee328f97d19d2d2d9761251b895b06d82eb1a1

Nomad Agent を立てる

dev モードで起動します

$ nomad agent -dev ==> No configuration files loaded ==> Starting Nomad agent... ==> Nomad agent configuration: Advertise Addrs: HTTP: 127.0.0.1:4646; RPC: 127.0.0.1:4647; Serf: 127.0.0.1:4648 Bind Addrs: HTTP: [127.0.0.1:4646]; RPC: 127.0.0.1:4647; Serf: 127.0.0.1:4648 Client: true Log Level: DEBUG Node Id: dfb328eb-d932-6919-4989-9533e5f51dc3 Region: global (DC: dc1) Server: true Version: 1.7.3 ==> Nomad agent started! Log data will stream in below:

nginx コンテナを立てる

次のファイルを作成

// app.nomad.hcl job "app" { datacenters = ["dc1"] group "web" { network { port "http" { to = 80 static = 3000 } } task "nginx" { driver = "docker" config { image = "nginx:latest" ports = ["http"] } } } }

次のコマンドを叩くと nginx コンテナが立ち上がった。

nomad run app.nomad.hcl

nginx コンテナへ exec する

次のコマンドで allocation のIDをコピー

$ nomad job allocs app ID Node ID Task Group Version Desired Status Created Modified 0a36e239 c8a2e3f1 web 9 run running 7m33s ago 7m20s ago

次のコマンドでコンテナの中に入れた

$ nomad exec 0a36e239 bash root@5b3f8a1d:/# ls alloc boot docker-entrypoint.d etc lib media opt root sbin srv tmp var bin dev docker-entrypoint.sh home local mnt proc run secrets sys usr
  • 作成日
    2024-02-16
  • 更新日
    2024-02-16