Rumah > Java > javaTutorial > Membina imej Ubuntu tersuai dengan SDKMan dan menggunakannya dalam saluran paip CI/CD Gitlab

Membina imej Ubuntu tersuai dengan SDKMan dan menggunakannya dalam saluran paip CI/CD Gitlab

Patricia Arquette
Lepaskan: 2025-01-28 20:05:16
asal
762 orang telah melayarinya

Butir-butir artikel ini mencipta imej Docker Ubuntu tersuai yang telah dikonfigurasi dengan SDKMan, pengurus SDK yang serba boleh, dan mengintegrasikannya ke dalam saluran paip CI/CD Gitlab. Ini memastikan perkembangan yang konsisten dan persekitaran CI/CD.

Langkah 1: Membina Imej Docker Custom

Dockerfile berikut mencipta imej Ubuntu 20.04, memasang kebergantungan, dan menetapkan SDKMAN dengan versi Java, Scala, dan SBT tertentu:

<code class="language-dockerfile"># Dockerfile
FROM ubuntu:20.04

# Install dependencies
RUN apt-get update && apt-get install -y curl unzip zip bash git vim wget jq tmux

# Install SDKMAN!
RUN curl -s "https://get.sdkman.io" | bash

# Set shell and source SDKMAN
SHELL ["/bin/bash", "-c"]
RUN source "$HOME/.sdkman/bin/sdkman-init.sh" && \
    sdk install java 21.0.2-open && \
    sdk install sbt 1.8.2 && \
    sdk install scala 2.13.10

# Set working directory
WORKDIR /app</code>
Salin selepas log masuk

Penjelasan: Dockerfile menggunakan ubuntu:20.04 sebagai pangkalannya. Alat penting dipasang menggunakan apt-get. SDKMAN dipasang melalui skripnya, dan versi SDK tertentu kemudian dipasang. Akhirnya, direktori kerja ditetapkan ke /app.

membina dan menolak imej

Bina imej menggunakan:

<code class="language-bash">docker build -t bansikah/gitlab-ci:v1.0.1 .</code>
Salin selepas log masuk

Building a Custom Ubuntu Image with SDKMAN and Using It in a GitLab CI/CD Pipeline

Tolak imej ke pendaftaran Docker anda (mis., Hab Docker): (Imej yang ditinggalkan untuk keringkasan, tetapi prosesnya ditunjukkan secara visual.)

Building a Custom Ubuntu Image with SDKMAN and Using It in a GitLab CI/CD Pipeline Langkah 2: Integrasi Gitlab CI/CD

fail

ini menggunakan imej tersuai dan mengesahkan pemasangan SDKMAN:

.gitlab-ci.yml

<code class="language-yaml"># .gitlab-ci.yml
image: bansikah/gitlab-ci:v1.0.1

stages:
  - test

test-job:
  stage: test
  script:
    - echo "Checking SDKMAN version..."
    - source "$HOME/.sdkman/bin/sdkman-init.sh"
    - sdk version
    - echo "Checking installed SDKs..."</code>
Salin selepas log masuk
Penjelasan:

Menentukan imej tersuai. Peringkat menjalankan pekerjaan yang sumber SDKMAN, memeriksa versi, dan (secara tersirat) mengesahkan pemasangan SDK dengan cuba menjalankan .gitlab-ci.yml. test sdk version Langkah 3: Menjalankan saluran paip

Menolak

ke repositori Gitlab anda mencetuskan saluran paip.

menggunakan imej tersuai, mengesahkan SDKman dan SDK yang dipasang. .gitlab-ci.yml test-job

Kesimpulan Building a Custom Ubuntu Image with SDKMAN and Using It in a GitLab CI/CD Pipeline

Imej Docker Custom ini menyelaraskan pembangunan dan CI/CD dengan menyediakan persekitaran yang konsisten dengan SDK yang telah dipasang. Penyesuaian lanjut adalah mungkin dengan menambahkan lebih banyak SDK atau alat yang diperlukan. Rujuk kepada dokumentasi SDKMan, Docker, dan Gitlab CI/CD untuk maklumat lanjut.

Atas ialah kandungan terperinci Membina imej Ubuntu tersuai dengan SDKMan dan menggunakannya dalam saluran paip CI/CD Gitlab. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan