Docker-compose.yml already in filelist

Hi Support

I am using:

Software summary

Bootloader: U-Boot

Kernel version: 6.6.95-7.3.0-00056-g7e9b01295ba3 #1-Torizon SMP PREEMPT Wed May 21 10:19:34 UTC 2025
Kernel command line: root=LABEL=otaroot rootfstype=ext4 quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:3 ostree=/ostree/boot.0/torizon/036f2def1695712e35ea2933fac8c6b9abe44f5afd21c3b3539849a1fbff8d1d/0
Distro name: NAME=“Torizon OS Upstream”
Distro version: VERSION_ID=7.3.0-build.18
Distro variant: VARIANT=“Docker”
Hostname: colibri-imx7-emmc-15347609

Hardware info

HW model: Toradex Colibri iMX7D 1GB (eMMC) on Colibri Evaluation Board V3

Toradex version: 0039 V1.1B
Serial number: 15347609
Processor arch: armv7l
Available block devices:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
mmcblk0 179:0 0 3.6G 0 disk
mmcblk0p1 179:1 0 3.6G 0 part /var/lib/docker/volumes/mysql_data_folder/_data\x0a/var\x0a/usr\x0a/boot\x0a/\x0a/sysroot
mmcblk0boot0 179:32 0 4M 1 disk
mmcblk0boot1 179:64 0 4M 1 disk
zram0 253:0 0 0B 0 disk

My computer is a VM:

Ubuntu 24.04.3 LTS
torizoncorebuilder 3.13.0

I run this command as detailed in your wiki:

torizoncore-builder bundle docker-compose.yml --bundle-directory bundle --platform linux/arm/v7

Which completes successfully, and then I run this command which does not.

torizoncore-builder build

The error is:

an unexpected Exception occurred. Please provide the following stack trace to
the Toradex TorizonCore support team:

Traceback (most recent call last):
File “/builder/torizoncore-builder”, line 231, in
mainargs.func(mainargs)
File “/builder/tcbuilder/cli/build.py”, line 695, in do_build
raise exc
File “/builder/tcbuilder/cli/build.py”, line 668, in do_build
build(args.config_fname, args.storage_directory,
File “/builder/tcbuilder/cli/build.py”, line 654, in build
raise exc
File “/builder/tcbuilder/cli/build.py”, line 639, in build
handle_output_section(
File “/builder/tcbuilder/cli/build.py”, line 309, in handle_output_section
handle_easy_installer_output(tezi_props, storage_dir, union_params)
File “/builder/tcbuilder/cli/build.py”, line 387, in handle_easy_installer_output
handle_bundle_output(
File “/builder/tcbuilder/cli/build.py”, line 492, in handle_bundle_output
comb_be.combine_tezi_image(**combine_params)
File “/builder/tcbuilder/backend/combine.py”, line 260, in combine_tezi_image
combine_single_tezi_image(**combine_params)
File “/builder/tcbuilder/backend/combine.py”, line 188, in combine_single_tezi_image
return update_tezi_files(output_dir, tezi_props, files_to_add)
File “/builder/tcbuilder/backend/combine.py”, line 174, in update_tezi_files
version = add_files(**add_files_params)
File “/builder/tcbuilder/backend/combine.py”, line 109, in add_files
config.add_files(
File “/builder/tezi/image.py”, line 113, in add_files
raise SourceInFilelistError(f"{decoded[‘src’]} already in filelist")
tezi.errors.SourceInFilelistError: docker-compose.yml already in filelist

Please suggest any action I need to take to allow the new docker-compose.yml file to be added to the image.

I am able to create an image with the default template and deploy successfully to the SOM.

Regards
Lloyd

Hi, I’m the Toradex AI Assistant.

I might make mistakes. Our support team will step in if needed. If I answered your question, please tick the “Solution” checkbox. For follow-up questions to me, please use @ToradexAI in your post.

Did you like my answer? :+1: :-1:


Hello Lloyd,

The error you’re encountering indicates that your configuration file is trying to add a docker-compose.yml file that already exists in the filelist. This typically happens when there’s a conflict in how the bundle and build commands are configured.

Solution

Based on the TorizonCore Builder documentation, there are two recommended approaches to resolve this issue:

Approach 1: Use Pre-bundled Directory Configuration

Since you’ve already successfully created the bundle using the bundle command, modify your tcbuild.yaml configuration file to reference the pre-bundled directory instead of the compose file directly(1):

output:
  easy-installer:
    local: path/to/your/custom-image-folder
    bundle:
      dir: bundle/

This approach uses the pre-bundled container images you created with the bundle command(1).

Approach 2: Use Auto-Pull Configuration

Alternatively, if you want TorizonCore Builder to handle the bundling automatically during the build process, configure your tcbuild.yaml to reference the Docker Compose file directly(1):

output:
  easy-installer:
    local: <path>
    bundle:
      compose-file: custom/docker-compose.yml

Important Notes

  • Don’t mix approaches: The documentation emphasizes that both approaches generate a custom Toradex Easy Installer image as output, so “the approaches should be followed alternatively and not in sequence”(2)
  • Platform specification: Since you’re targeting armv7l architecture, ensure you continue using the --platform linux/arm/v7 parameter when needed(2)

Recommended Action

Since you’ve already successfully created the bundle directory, I recommend using Approach 1 with the pre-bundled directory configuration. This will avoid the conflict you’re experiencing and utilize the bundle you’ve already created.

Make sure your tcbuild.yaml file references the bundle directory rather than the compose file directly, and remove any conflicting bundle configuration that might be causing the duplicate file error.

Best regards, Toradex AI Assistant.

Greetings @Lloyd,

Could you share the content of your tcbuild.yaml file that causes this error.

Also does the input Torizon OS image you are specifying in your tcbuild.yaml already contain a docker-compose.yml file? If that is the case this could cause the error you are seeing.

You would need to provide an input image that does not already have containers bundled.

Best Regards,
Jeremias