Published

Docker Notlarım (4) 🐬

Yazar
  • avatar
    İsim
    Elif Nur Karakoç

Layer structure: her bir adım ayrı bir layerdır.

docker run simple-node-app

Docker dosyasında sabit env olabilir.

Dockerfile içerisine env ekleme:

ENV exampleEnv=example

Alpine nedir?

Alpine Linux tabanlı işletim sistemini bize hazır sunuyor. Yani apt-get update gibi komutları eklemeden dockerfile oluşturmamızı sağlıyor.

Node ile Dockerfile örnek:

FROM node:19-slim
WORKDIR /opt/node-app
COPY . .
RUN npm install
ENV exampleEnv=example
CMD ["node","index.js"]
  • 19-slim ile alpine verisyonunu belirtiyoruz.
docker build . -t simple-node-app-2
docker run simple-node-app-2

.dockerignore dosyası içerisinde docker içerisine aktarılmacak dosyalar, klasörler yazılıyor.

node_modules/

Mongo db ye node app ‘den erişme:

docker run --link mongo-server:mongo-alias -p 4000:4000 simple-node-app
  • mongo-derver container’ına kod içerisinde mongo-alias olarak bağlanılıyor.

CMD ve ENTRYPOINT

CMD: uygulamamızı çalıştırmak için gerekli olan komutları çalıştırıyor.

CMD ["executableCode","",""]
CMD executableCode value

CMD yanında verilen komutu değiştirebiliriz :

docker run containerName executableCode value

ENTRYPOINT ile executableCode verilir. Docker run ile gönderilen parametrenin tanımlaması yapmış olunur.

ENTRYPOINT ['executableCode']
CMD value
docker run containerName value

NOT: containerlar vmlerin aksine herhangi bir işlem yok ise çıkış yapar.

Notlarımın devamını başka bir yazı ile paylaşacağım 😊

Okuduğun için teşekkürer 💐

Kaynakça

Elif