Gérer les profils, alias et environnements
Les projets réels nécessitent des paramètres différents pour le développement, les tests et la production. Cette leçon vous apprend à gérer la configuration et les compilations propres à chaque environnement avec les profils Leiningen et les alias deps.edn.
Gérer les profils, alias et environnements est une leçon Clojure Functional Programming & JVM Backend Development gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Clojure Functional Programming & JVM Backend Development, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Clojure Functional Programming & JVM Backend Development comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
Why Profiles and Aliases
You should not ship dev tooling to production. Profiles (Leiningen) and aliases (deps.edn) let one project produce different configurations on demand.
Leiningen Profiles
A profile in project.clj overlays extra config, such as dev-only dependencies, that merge into the base.
{:profiles
{:dev {:dependencies [[midje "1.10.9"]]}
:uberjar {:aot :all}}}Activating a Profile
Use the with-profile task to run a command under a chosen profile.
lein with-profile +uberjar uberjarDefault Profiles
The :dev profile activates automatically for local commands like lein repl, so test tooling is available without extra flags.
deps.edn Aliases
In tools.deps, an alias adds dependencies or options under a keyword you activate with the -M or -X flags.
{:aliases
{:test {:extra-paths ["test"]
:extra-deps {lambdaisland/kaocha {:mvn/version "1.91.1392"}}}}}Running an Alias
Invoke an alias from the CLI; multiple aliases combine.
clojure -M:test:dev -m kaocha.runnerEnvironment Variables
Read configuration from the environment so the same artifact behaves differently per deployment without recompiling.
(def db-url (System/getenv "DATABASE_URL"))
(println db-url)Config Files Per Environment
Keep an config.edn read at startup. Choose the file via an env var so prod and dev load different settings.
(require '[clojure.edn :as edn])
(def config
(edn/read-string (slurp (or (System/getenv "CONFIG") "dev.edn"))))Keep Secrets Out of Source
Never commit credentials. Inject them through environment variables or a secrets manager, and reference them from profiles or aliases only by name.
Composition Over Duplication
Both profiles and aliases compose. Layer a base plus environment overlays rather than maintaining several near-identical full configs.
Reproducible Builds
Pin versions and avoid implicit defaults so a build on CI matches a build on a laptop. Profiles and aliases make these differences explicit and intentional.
Quick Check
Test your profiles and aliases knowledge.
Recap
You learned Leiningen profiles, deps.edn aliases, activating them from the CLI, reading environment variables and per-environment config files, keeping secrets out of source, and composing layers for reproducible builds.
Questions Fréquemment Posées
La leçon « Gérer les profils, alias et environnements » est-elle gratuite ?
Oui — le texte complet de « Gérer les profils, alias et environnements » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Clojure Functional Programming & JVM Backend Development, passe à CoddyKit PRO. Le cours Clojure Functional Programming & JVM Backend Development comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Gérer les profils, alias et environnements » ?
Les projets réels nécessitent des paramètres différents pour le développement, les tests et la production. Cette leçon vous apprend à gérer la configuration et les compilations propres à chaque envir… Tu pratiques Clojure Functional Programming & JVM Backend Development avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Clojure Functional Programming & JVM Backend Development ?
Aucune expérience préalable n'est requise. Clojure Functional Programming & JVM Backend Development sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Gérer les profils, alias et environnements » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Clojure Functional Programming & JVM Backend Development ?
Oui. Chaque leçon Clojure Functional Programming & JVM Backend Development inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Principes de base de Leiningen et Deps.edn
- Gestion des dépendances et des extensions
- Compilation, tests et déploiement
- Gérer les profils, alias et environnements