Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Melaksanakan Perintah Pelaksanaan Tunggal dalam Docker Compose Semasa Deployment?

Bagaimana untuk Melaksanakan Perintah Pelaksanaan Tunggal dalam Docker Compose Semasa Deployment?

Linda Hamilton
Linda Hamiltonasal
2024-11-08 18:57:02505semak imbas

How to Execute a Single-Execution Command in Docker Compose During Deployment?

Menjalankan Perintah Perlaksanaan Tunggal dalam Docker Compose

Untuk menggunakan pelayan web Go dengan cekap menggunakan Docker Compose, anda mungkin menghadapi halangan apabila cuba melaksanakan arahan hanya sekali semasa penggunaan. Perintah khusus ini, ./my-project -setup, perlu dijalankan hanya selepas projek anda telah disusun untuk menambah maklumat penting pada pangkalan data anda.

Docker Compose tidak menyediakan penyelesaian langsung untuk keperluan ini, tetapi anda boleh memintasnya dengan memperkenalkan skrip titik masuk ke bekas anda. Dalam skrip ini, anda boleh melaksanakan semakan untuk mengesahkan sama ada pangkalan data telah dimulakan dan jika tidak, teruskan dengan langkah yang diperlukan.

Adalah penting untuk ambil perhatian bahawa susunan bekas dimulakan dalam Docker Compose ialah tidak konsisten. Ini bermakna bekas aplikasi boleh dimulakan sebelum bekas pangkalan data, yang berpotensi membawa kepada ketidaktepatan pangkalan data. Skrip titik masuk harus mempertimbangkan kemungkinan ini dan menyesuaikan dengan sewajarnya.

Sebagai contoh, anda boleh mendapatkan inspirasi daripada pendekatan imej WordPress rasmi. Imej menggunakan skrip titik masuk yang cuba mewujudkan sambungan ke pangkalan data dan menjalankan prosedur permulaan yang diperlukan berdasarkan status sambungan: https://github.com/docker-library/wordpress/blob/df190dc9c5752fd09317d836bd2bdcd09ee379a5/apache/docker-entrypoint .sh#L146-L171.

Selain itu, anda boleh memudahkan konfigurasi Docker Compose anda dengan menghapuskan penggunaan "bekas data sahaja" untuk pemasangan volum. Sejak Docker 1.9, Docker menyokong pengurusan volum, termasuk menamakan volum. Ini membolehkan anda mengecualikan bekas data sahaja dan mengubah suai konfigurasi perkhidmatan Mongo dengan sewajarnya:

mongo:
    image: mongo:latest
    volumes:
      - mongodata:/data/db
    ports:
      - "28001:27017"
    command: --smallfiles --rest --auth

Pengubahsuaian ini akan mencipta atau menggunakan semula volum bernama "mongodata." Untuk menyenaraikan atau mengalih keluar volum, gunakan arahan docker volume ls dan docker volume rm masing-masing.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Perintah Pelaksanaan Tunggal dalam Docker Compose Semasa Deployment?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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