Buildpacks ile dağıtımdan önce yerel ortamda derleme yaparak sorunları erken aşamada tespit edebilir ve düzeltebilirsiniz. Bu yaklaşım, dağıtım hatalarını azaltır ve geliştirme verimliliğini artırır.
Hazırlıklar
-
Ağ hazırlığı
Buildpacks konteyner görüntüleri Docker Hub üzerinde barındırıldığından, yerel ortamınızın Docker Hub'a erişebildiğinden emin olun.
-
Docker kurulumu
Pack aracını kullanmadan önce Docker'ı yükleyin. Alibaba Cloud Linux için aşağıdaki komutları çalıştırın:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum makecache yum install -y curl git docker-ce systemctl enable docker && systemctl start docker Uygulama kodu: Uygulama kodu deponuzun hazır olduğundan emin olun.
Yordam
1. Adım: Pack aracını yükleyin
Pack aracını indirin ve yükleyin. Aşağıdaki örnekte Alibaba Cloud Linux kullanılmıştır.
# Download and install pack
PACK_VERSION="0.36.4"
DOWNLOAD_URL="https://github.com/buildpacks/pack/releases/download/v${PACK_VERSION}/pack-v${PACK_VERSION}-linux.tgz"
CHECKSUM_URL="${DOWNLOAD_URL}.sha256"
# Download and verify the pack file
echo "Downloading pack v${PACK_VERSION}..."
if ! curl -fsSL "$DOWNLOAD_URL" -o pack-v${PACK_VERSION}-linux.tgz; then
echo "Failed to download pack v${PACK_VERSION}."
exit 1
fi
echo "Downloading completed."
echo "Verifying checksum..."
if ! curl -fsSL "$CHECKSUM_URL" -o pack.tgz.sha256; then
echo "Failed to download checksum file."
exit 1
fi
if ! sha256sum --check --status pack.tgz.sha256; then
echo "Checksum verification failed."
exit 1
fi
echo "Checksum verified successfully."
tar xvzf pack-v${PACK_VERSION}-linux.tgz -C /usr/local/bin/
# Check if the installation was successful
pack --version
2. Adım: Pack aracıyla uygulamayı hata ayıklayın
-
pack buildkomutunu kullanarak uygulamayı derleyin ve bir görüntü oluşturun.-
Komut: <your-image-name> ifadesini oluşturulacak konteyner görüntüsünün adıyla, <path-to-your-app> ifadesini ise uygulama kodunun yerel yoluyla değiştirin.
pack build <your-image-name> --path <path-to-your-app> --builder heroku/builder:24 -
Örnek: Bu örnekte görüntü adı
my-app, yol ise./my-appolarak belirtilmiştir.pack build my-app --path ./my-app --builder heroku/builder:24
-
-
Oluşturulan görüntüyü aşağıdaki komutla çalıştırın.
# Specify environment variables and ports according to your application code docker run -e PORT=8080 -p8080:8080 my-app -
Uygulamanızı test etmek için
http://localhost:<port-number>adresine erişin.Bu örnekte <port-number> yerine
8080yazın.
3. Adım: Uygulamayı hata ayıklayın ve uyarlayın
Uygulama derleme veya çalışma zamanında sorunlarla karşılaşırsa gerekirse hata ayıklama ve uyarlama yapın.
-
Uygulama derleme günlüklerini inceleyin.
Ayrıntılı derleme günlüklerini görmek için
--verboseparametresini kullanın. Komut şu şekildedir:pack build my-app --path ./my-app --builder heroku/builder:24 --verbose -
Uygulama kodunda değişiklik yapın ve yeniden hata ayıklama sürecini başlatın.
Hata ayıklama bilgilerine dayanarak kodda gerekli düzenlemeleri yapın ve
pack buildkomutunu tekrar çalıştırın. -
Ortam değişkenlerini dahil edin.
Ortam değişkenlerini
--envseçeneğiyle aktarın. Komut şu şekildedir:pack build my-app --path ./my-app --builder heroku/builder:24 --env MY_ENV=production -
Ek yerel testler ve doğrulamalar yapın.
Uygulamayı konteyner içinde çalıştırıp test ederek işlevselliğinin ve performansının gereksinimleri karşıladığından emin olun.
İlgili Kaynaklar
Belirli Buildpacks sorunları için Belirli bir programlama dilinde uygulama yapılandırma veya resmi Buildpacks belgeleri konularına bakın.
project.tomldosyasında belirtilen üçüncü taraf Buildpacks kullanıyorsanız, ilgili Cloud Native Buildpacks belgelerine başvurun.