compose-go icon indicating copy to clipboard operation
compose-go copied to clipboard

Bug report: `panic: interface conversion: interface {} is string, not int`

Open benjaminwood opened this issue 11 months ago • 1 comments

My docker-compose version is 2.24.7-1:

> docker-compose --version
Docker Compose version 2.24.7-1

The following service causes a panic. Specifically soft: "262144" and hard: "262144". If I remove the quotes to change the values to numbers, it works fine. Still, I figure it shouldn't cause a panic if the type isn't right.

services:
  clickhouse:
    image: clickhouse/clickhouse-server:23.9
    container_name: clickhouse
    environment:
      - "CLICKHOUSE_DB=...."
      - "CLICKHOUSE_PASSWORD=...."
    volumes:
      - clickhouse_data:/var/lib/clickhouse
      - clickhouse_logs:/var/lib/clickhouse-server
    ports:
      - "8123:8123"
      - "9000:9000"
    ulimits:
      nofile:
        soft: "262144"
        hard: "262144"
[2024-03-13T18:55:05.842Z] panic: interface conversion: interface {} is string, not int

goroutine 1 [running]:
github.com/compose-spec/compose-go/loader.transformUlimits({0x159c720?, 0x40005291a0?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/loader/loader.go:698 +0x1e0
github.com/compose-spec/compose-go/loader.createTransformHook.func1({0x159c720?, 0x40005291a0?}, {0x1b81408?, 0x16f55e0?}, {0x159c720, 0x40005291a0})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/loader/loader.go:424 +0x60
github.com/mitchellh/mapstructure.DecodeHookExec({0x15f4680?, 0x400051dd30?}, {0x159c720?, 0x40005291a0?, 0x158eda0?}, {0x16f55e0?, 0x400061efa0?, 0x15e2180?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/decode_hooks.go:47 +0x138
github.com/mitchellh/mapstructure.ComposeDecodeHookFunc.func1({0x159c720?, 0x40005291a0?, 0x40006a3788?}, {0x16f55e0?, 0x400061efa0?, 0x75190?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/decode_hooks.go:69 +0xe0
github.com/mitchellh/mapstructure.DecodeHookExec({0x158eda0?, 0x400061e3e0?}, {0x159c720?, 0x40005291a0?, 0x8c40?}, {0x16f55e0?, 0x400061efa0?, 0x20?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/decode_hooks.go:51 +0x9c
github.com/mitchellh/mapstructure.(*Decoder).decode(0x4000413468, {0x40001bf280, 0xf}, {0x159c720?, 0x40005291a0?}, {0x16f55e0?, 0x400061efa0?, 0x196?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:459 +0x16c
github.com/mitchellh/mapstructure.(*Decoder).decodePtr(0x4000413468, {0x40001bf280, 0xf}, {0x159c720, 0x40005291a0}, {0x15c9fc0?, 0x40004134c0?, 0x8?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:1052 +0x3ec
github.com/mitchellh/mapstructure.(*Decoder).decode(0x4000413468, {0x40001bf280, 0xf}, {0x159c720?, 0x40005291a0?}, {0x15c9fc0?, 0x40004134c0?, 0x1b52fb0?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:486 +0x288
github.com/mitchellh/mapstructure.(*Decoder).decodeMapFromMap(0x1b81408?, {0x144f857, 0x7}, {0x159c720?, 0x4000529170?, 0x159c720?}, {0x15983a0?, 0x4000345850?, 0x159c720?}, {0x15983a0?, ...})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:889 +0x678
github.com/mitchellh/mapstructure.(*Decoder).decodeMap(0x4000413468, {0x144f857, 0x7}, {0x159c720?, 0x4000529170}, {0x15983a0?, 0x4000345850?, 0xe4430?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:818 +0x2e4
github.com/mitchellh/mapstructure.(*Decoder).decode(0x4000413468, {0x144f857, 0x7}, {0x159c720?, 0x4000529170?}, {0x15983a0?, 0x4000345850?, 0x0?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:484 +0x27c
github.com/mitchellh/mapstructure.(*Decoder).decodeStructFromMap(0x4000413468, {0x0, 0x0}, {0x159c720?, 0x4000529140?, 0x1?}, {0x1866ac0?, 0x4000345400?, 0x400061e3c0?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:1411 +0x150c
github.com/mitchellh/mapstructure.(*Decoder).decodeStruct(0x158eda0?, {0x0, 0x0}, {0x159c720?, 0x4000529140?}, {0x1866ac0?, 0x4000345400?, 0x0?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:1235 +0x38c
github.com/mitchellh/mapstructure.(*Decoder).decode(0x4000413468, {0x0, 0x0}, {0x159c720?, 0x4000529140?}, {0x1866ac0?, 0x4000345400?, 0x17d8100?})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:482 +0x328
github.com/mitchellh/mapstructure.(*Decoder).Decode(0x4000413468, {0x159c720, 0x4000529140})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/mitchellh/[email protected]/mapstructure.go:417 +0x110
github.com/compose-spec/compose-go/loader.Transform({0x159c720, 0x4000529140}, {0x16011e0?, 0x4000345400}, {0x0, 0x0, 0x0})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/loader/loader.go:375 +0x198
github.com/compose-spec/compose-go/loader.LoadService({0x40001bed20, 0xa}, 0x40001bed20?, {0x400059e1b0, 0x19}, 0x2951f00?, 0x1, 0x0)
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/loader/loader.go:578 +0x84
github.com/compose-spec/compose-go/loader.loadServiceWithExtends({0x400059e1b0, 0x28}, {0x40001bed20, 0xa}, 0x12?, {0x400059e1b0, 0x19}, 0xffff83fd1498?, 0x40006c2090, 0x90?)
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/loader/loader.go:511 +0xd0
github.com/compose-spec/compose-go/loader.loadServiceWithExtends({0xfffffaa46ddd, 0x25}, {0x400061ab90, 0xa}, 0x1000?, {0xfffffaa46ddd, 0x12}, 0x1?, 0x40006c2090, 0x40001f0000?)
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/loader/loader.go:539 +0x224
github.com/compose-spec/compose-go/loader.LoadServices({0xfffffaa46ddd, 0x25}, 0x1870366?, {0xfffffaa46ddd, 0x12}, 0x5fcfd4?, 0x40006a5798?)
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/loader/loader.go:490 +0x144
github.com/compose-spec/compose-go/loader.loadSections({0xfffffaa46ddd, 0x25}, 0xfffffaa46ddd?, {{0x0, 0x0}, {0xfffffaa46ddd, 0x12}, {0x40006ca0c0, 0x2, 0x2}, ...}, ...)
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/loader/loader.go:314 +0x2a4
github.com/compose-spec/compose-go/loader.Load({{0x0, 0x0}, {0xfffffaa46ddd, 0x12}, {0x40006ca0c0, 0x2, 0x2}, 0x400029c570}, {0x40006ce000, 0x6, ...})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/loader/loader.go:187 +0x730
github.com/compose-spec/compose-go/cli.ProjectFromOptions(0x40003bccb0)
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/compose-spec/[email protected]/cli/options.go:358 +0x240
github.com/docker/compose/v2/cmd/compose.(*projectOptions).toProject(0x4000437680, {0x29fa6a8, 0x0, 0x0}, {0x400073f918?, 0xc?, 0xb?})
  /home/buildozer/aports/community/docker-cli-compose/src/compose-2.12.2/cmd/compose/compose.go:185 +0xf8
github.com/docker/compose/v2/cmd/compose.runConvert({0x1b72f20?, 0x40000acdc0}, {0x1b80a20, 0x40000c20e0}, {0x4000437680, {0x186a71f, 0x4}, {0x0, 0x0}, 0x0, ...}, ...)
  /home/buildozer/aports/community/docker-cli-compose/src/compose-2.12.2/cmd/compose/convert.go:117 +0x108
github.com/docker/compose/v2/cmd/compose.convertCommand.func2({0x1b72f20?, 0x40000acdc0?}, {0x29fa6a8?, 0x400000e5d0?, 0x40000021a0?})
  /home/buildozer/aports/community/docker-cli-compose/src/compose-2.12.2/cmd/compose/convert.go:94 +0xe0
github.com/docker/compose/v2/cmd/compose.Adapt.func1({0x1b72f20?, 0x40000acdc0?}, 0x2?, {0x29fa6a8?, 0x1?, 0x0?})
  /home/buildozer/aports/community/docker-cli-compose/src/compose-2.12.2/cmd/compose/compose.go:90 +0x40
github.com/docker/compose/v2/cmd/compose.AdaptCmd.func1(0x400025a900, {0x29fa6a8, 0x0, 0x0})
  /home/buildozer/aports/community/docker-cli-compose/src/compose-2.12.2/cmd/compose/compose.go:69 +0x1ac
github.com/spf13/cobra.(*Command).execute(0x400025a900, {0x4000437b90, 0x0, 0x0})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/spf13/[email protected]/command.go:916 +0x60c
github.com/spf13/cobra.(*Command).ExecuteC(0x400028e000)
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/spf13/[email protected]/command.go:1040 +0x360
github.com/spf13/cobra.(*Command).Execute(...)
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/spf13/[email protected]/command.go:968
github.com/docker/cli/cli-plugins/plugin.RunPlugin(0x1b7e518?, 0x40000c6c00, {{0x186a96c, 0x5}, {0x1873a6f, 0xb}, {0x1b52e90, 0x7}, {0x0, 0x0}, ...})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/docker/[email protected]+incompatible/cli-plugins/plugin/plugin.go:51 +0x154
github.com/docker/cli/cli-plugins/plugin.Run(0x197ff08, {{0x186a96c, 0x5}, {0x1873a6f, 0xb}, {0x1b52e90, 0x7}, {0x0, 0x0}, {0x0, ...}, ...})
  /home/buildozer/aports/community/docker-cli-compose/src/go/github.com/docker/[email protected]+incompatible/cli-plugins/plugin/plugin.go:64 +0xf8
main.pluginMain()
  /home/buildozer/aports/community/docker-cli-compose/src/compose-2.12.2/cmd/main.go:36 +0xa8
main.main()
  /home/buildozer/aports/community/docker-cli-compose/src/compose-2.12.2/cmd/main.go:68 +0x1cc

benjaminwood avatar Mar 13 '24 19:03 benjaminwood