Comments (2)
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:
-
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.
-
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.
-
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.
-
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.
-
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.
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)
- Config overhaul: improve admin experience
- Config overhaul: rename `log_level` to `threshold`
- Config overhaul: make some fields mandatory HOT 3
- Config overhaul: define current config version as version 2
- Config overhaul: remove secrets when final config is printed to console
- Config overhaul: lowercase for `DatabaseDriver` HOT 1
- Config overhaul: use an explicit section for metadata HOT 8
- Keep-Alive not working for HTTP forwarded traffic (CloudFlare related) HOT 2
- Overhaul tracker keys: upload pre-generated keys
- Bug: tracker keys can contain any char not only alphanumeric chars
- Use a more conservative way to generate tracker keys?
- Overhaul tracker keys: option to disable auth key expiration HOT 3
- Overhaul tracker keys: allow permanent keys
- Overhaul tracker keys: add more tests
- potential issue with tracker and database usage HOT 2
- Database configuration needed even when it's not used HOT 1
- Bug? should we always remove inactive peers?
- Config overhaul: make secrets mandatory
- Missing packages in deployment workflow
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from torrust-tracker.