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-ympäristössä | Työskentely Docker Composen Kanssa
Dockerin Perusteet

bookYmpäristömuuttujat ja Konfiguraatio Compose-ympäristössä

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, kuvien 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 osana CI/CD-putkea.

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

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 säiliöihin;
  • Viittaa salaisuuksiin tiedostoina isäntäkoneella ja liitä ne säiliöön 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 säiliöön:

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

Tämä lähestymistapa pitää varsinaisen salaisuuden poissa Compose-tiedostosta ja ympäristömuuttujista, mikä vähentää tahattoman paljastumisen riskiä. Tarkista aina kokoonpanosi ja työnkulkusi 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?

Select the correct answer

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

Suggested prompts:

Can you explain how to override environment variables at runtime?

What are the best practices for keeping secrets secure in Docker Compose?

How do Docker secrets work with Compose files?

Awesome!

Completion rate improved to 7.14

bookYmpäristömuuttujat ja Konfiguraatio Compose-ympäristössä

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, kuvien 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 osana CI/CD-putkea.

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

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 säiliöihin;
  • Viittaa salaisuuksiin tiedostoina isäntäkoneella ja liitä ne säiliöön 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 säiliöön:

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

Tämä lähestymistapa pitää varsinaisen salaisuuden poissa Compose-tiedostosta ja ympäristömuuttujista, mikä vähentää tahattoman paljastumisen riskiä. Tarkista aina kokoonpanosi ja työnkulkusi 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?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 4
some-alt