Junior — Middle
Docker сүрөтүнүн көп баскычтуу курулуш концепциясын түшүндүрүп бериңиз жана эмне үчүн колдонулат.
sobes.tech AI
AIден жооп
Көп баскычтуу Docker сүрөтүн түзүү (multi-stage build) бир Dockerfile ичинде бир нече куруу этабын колдонууга мүмкүндүк берет. Бул компакт жана оптималдаштырылган сүрөттөрдү түзүүгө жардам берет, куруу жана иштетүү этаптарын бөлүп туруп.
Биринчи этапта, колдонмону компиляциялоо жана куруу үчүн инструменттери бар сүрөт колдонулушу мүмкүн, кийинки этаптарда — иштетүү үчүн зарур файлдар менен минималдуу сүрөт.
Артыкчылыктары:
- Аягында чыккан сүрөттүн өлчөмү кыйла азаяды.
- Артыкча көзкарандылыктар жана инструменттер акыркы сүрөттөн алынып салынат.
- Dockerfileдин тейлөөсү жана жаңылануусу жеңилдетилет.
Мисал:
# Куруу этабы
FROM openjdk:11-jdk AS build
WORKDIR /app
COPY . .
RUN ./gradlew build
# Ишке киргизүү этабы
FROM openjdk:11-jre
WORKDIR /app
COPY --from=build /app/build/libs/myapp.jar ./
CMD ["java", "-jar", "myapp.jar"]