GithubHelp home page GithubHelp logo

Comments (2)

josecelano avatar josecelano commented on August 22, 2024

Hi @da2ce7 It seems docker compose has removed the version from the compose file. I understand the reasons, but I think it's still valid for our case.

  • We are not planning to support more than one version simultaneously. If you update the tracker, you must update the config file (if there is a new major version).
  • Even if it could be easier for users with no overrides to just continue using the same config file, for users with many overrides is helpful to know which version they were using to they can follow the CHANGELOG to update the config file.

I have not yet found the official reason, but this is what ChatGPT says:

ChatGPT

The "version" field was removed from the Docker Compose file specification starting with version 3.9 to streamline the configuration process and make it more flexible and less error-prone. Here are some key reasons for this change:

  1. Simplification:

    • Removing the "version" field simplifies the Compose file format, making it easier to write and understand. Users no longer need to worry about specifying a particular version and can focus on defining their services.
  2. Unified Specification:

    • By removing the version field, Docker Compose can support all features and options in a unified way. Previously, some features were available only in specific versions, which led to compatibility issues and confusion.
  3. Forward Compatibility:

    • Without a version field, Compose files are inherently more forward-compatible. This means that users do not need to update their Compose files to specify a newer version if they want to use new features or improvements introduced in Docker Compose.
  4. Dynamic Updates:

    • The removal of the version field allows the Docker Compose team to introduce new features and improvements more dynamically without the need to increment the version number and require users to update their files.
  5. Consistency with Docker CLI:

    • This change brings more consistency with other Docker tools and the Docker CLI, which do not require a version field for their configuration files.

Overall, the removal of the "version" field in Docker Compose files reflects a move towards a more streamlined, flexible, and user-friendly approach to defining multi-container applications.

Other projects

Other important projects like Kubernetes, Terraform or Ansible.

from torrust-tracker.

josecelano avatar josecelano commented on August 22, 2024

Hi @da2ce7, For the time being, I'm going to add only the version at the root level. For the namespace, I will wait until you confirm your idea.

version = "2"

[logging]
threshold = "info"

[core]
inactive_peer_cleanup_interval = 600
listed = false
private = false
tracker_usage_statistics = true

  [core.announce_policy]
  interval = 120
  interval_min = 120
  
  [core.database]
  driver = "Sqlite3"
  path = "./storage/tracker/lib/database/sqlite3.db"
  
  [core.net]
  external_ip = "0.0.0.0"
  on_reverse_proxy = false
  
  [core.tracker_policy]
  max_peer_timeout = 900
  persistent_torrent_completed_stat = false
  remove_peerless_torrents = true

[health_check_api]
bind_address = "127.0.0.1:1313"

from torrust-tracker.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.