Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Ympäristömuuttujat ja konfiguraatio Compose:ssa | Docker Composen Käyttö
Dockerin Perusteet

Ympäristömuuttujat ja konfiguraatio Compose:ssa

Pyyhkäise näyttääksesi valikon

Ympäristömuuttujien käyttö docker-compose.yml-tiedostossa

Ympäristömuuttujien avulla voit luoda joustavia ja uudelleenkäytettäviä Docker Compose -kokoonpanoja. Määrittelemällä muuttujat vältät arvojen, kuten porttien, image-tunnisteiden tai tunnistetietojen, kovakoodauksen suoraan docker-compose.yml -tiedostoon. Sen sijaan viittaat näihin muuttujiin, ja Docker Compose korvaa niiden arvot ajonaikaisesti. Tämä lähestymistapa on erityisen hyödyllinen, kun samaa sovellusta otetaan käyttöön eri ympäristöissä, kuten kehityksessä, testauksessa tai tuotannossa.

Voit määritellä ja käyttää ympäristömuuttujia Compose-tiedostossa seuraavasti:

  • Tallenna ympäristömuuttujat .env-tiedostoon samaan hakemistoon kuin docker-compose.yml;
  • Viittaa muuttujiin Compose-tiedostossa käyttämällä ${VARIABLE_NAME} -syntaksia;
  • Yliaja muuttujat antamalla ne suoraan komentorivillä tai CI/CD-putkessa.

Oletetaan, että haluat määrittää tietokannan salasanan ja sovelluksen portin ympäristömuuttujilla. Luo .env-tiedosto, jossa on:

DB_PASSWORD=supersecret
APP_PORT=8080

Viittaa näihin muuttujiin docker-compose.yml-tiedostossa seuraavasti:

version: "3.8"
services:
  web:
    image: myapp:latest
    ports:
      - "${APP_PORT}:80"
    environment:
      - DB_PASSWORD=${DB_PASSWORD}

Kun suoritat docker-compose up, Docker Compose korvaa arvot .env-tiedostosta kokoonpanoon. Tämä menetelmä pitää arkaluonteiset tai ympäristökohtaiset tiedot poissa Compose-tiedostosta ja tekee kokoonpanosta siirrettävämmän.

Salaisuuksien ja arkaluonteisten tietojen hallinta Compose-tiedostoissa

Vaikka ympäristömuuttujat ovat käteviä, ne eivät aina ole turvallisin tapa käsitellä arkaluonteisia tietoja, kuten salasanoja, API-avaimia tai varmenteita. Ympäristömuuttujat voivat joskus paljastua lokien, prosessilistojen tai versionhallinnan kautta, jos niitä ei käsitellä huolellisesti. Turvallisuuden parantamiseksi voit käyttää useita tekniikoita salaisuuksien hallintaan Docker Composessa:

  • Tallenna arkaluonteiset arvot erilliseen .env-tiedostoon ja varmista, että tämä tiedosto on poissuljettu versionhallinnasta käyttämällä .gitignore-tiedostoa;
  • Hyödynnä Docker Composen Docker secrets -ominaisuutta, jos otat käyttöön Docker Swarmilla. Tämän avulla voit liittää salaisuudet turvallisesti tiedostoina kontteihin;
  • Viittaa salaisuuksiin tiedostoina isäntäkoneella ja liitä ne konttiin käyttämällä volumes-avainta Compose-tiedostossa.

Esimerkki: Välttääksesi tietokannan salasanan paljastumisen, tallenna se tiedostoon nimeltä db_password.txt ja liitä se konttiin:

services:
  db:
    image: postgres:latest
    volumes:
      - ./db_password.txt:/run/secrets/db_password
    environment:
      - POSTGRES_PASSWORD_FILE=/run/secrets/db_password

Tämä tapa pitää varsinaisen salaisuuden poissa Compose-tiedostosta ja ympäristömuuttujista, mikä vähentää tahattoman paljastumisen riskiä. Tarkista aina kokoonpanosi ja työnkulut varmistaaksesi, että salaisuudet ovat suojattuja, äläkä koskaan tallenna arkaluonteisia tietoja versionhallintaan.

question mark

Mikä on ympäristömuuttujien käytön tärkein etu Docker Compose -tiedostossa?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 4

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 3. Luku 4
some-alt