Cara menandai gambar buruh pelabuhan dengan buruh pelabuhan-menulis

119

Saya ingin membangun image melalui docker-compose dan menyetel tag khusus untuk itu. Dokumentasi mengatakan:

Tulis akan membangun dan menandainya dengan nama yang dihasilkan, dan menggunakan gambar itu setelahnya.

Tetapi saya tidak dapat menemukan cara untuk menentukan tag dan untuk gambar yang dibangun saya selalu melihat tag 'terbaru'.

4ybaka
sumber
1
github.com/docker/compose/issues/2092 adalah dukungan pelacakan masalah untuk membangun gambar dengan nama yang berbeda
dnephin

Jawaban:

182

Tampaknya dokumen / alat telah diperbarui dan Anda sekarang dapat menambahkan imagetag ke skrip Anda. Ini berhasil bagi saya.

Contoh:

version: '2'
services:

  baggins.api.rest:
    image: my.image.name:rc2
    build:
      context: ../..
      dockerfile: app/Docker/Dockerfile.release
    ports:
      ...

https://docs.docker.com/compose/compose-file/#build

Randy Larson
sumber
7
Memang, dikatakan "Jika Anda menentukan gambar serta build, maka Compose menamai gambar yang dibuat dengan aplikasi web dan tag opsional ditentukan dalam gambar"
Daniel Andrei Mincă
10
Antarmuka yang aneh! Kehadiran satu bidang membalikkan semantik bidang lain yang berada pada tingkat indentasi yang sama.
Navin
@ numbers1311407 Anda mungkin ingin mengubah / menghapus komentar Anda karena komentar yang Anda balas hilang. Sepertinya Anda tidak setuju dengan ootwch atau jawabannya.
Navin
4
Ya saya menemukan konsep ini sangat aneh. Saya mengharapkan tagopsi. Saya menelusuri dokumen mencari tag sia
Matthew Brent
1
@Navin Jika ini tidak cukup aneh, cobalah memasukkan image: my.image.name:rc2docker-compose.yml dan build: .di docker-compose.override.yml dan biarkan docker-compose menggabungkan keduanya! (Anda mendapatkan efek yang sama dengan jawaban yang diterima)
Craftonix - AA
23

Jawaban asli 20 November '15 :

Tidak ada opsi untuk tag tertentu mulai Hari Ini. Docker compose hanya melakukan keajaibannya dan memberikan tag seperti yang Anda lihat. Anda selalu dapat memiliki beberapa panggilan skrip docker tag <image> <tag>setelah Anda memanggil docker-compose.

Sekarang ada opsi seperti yang dijelaskan di atas atau di sini

build: ./dir
image: webapp:tag
Rico
sumber
6

Jika Anda menentukan image serta build, maka Compose menamai image yang dibuat dengan webapp dan tag opsional yang ditentukan dalam image:

build: ./dir
image: webapp:tag

Ini menghasilkan gambar yang diberi nama webappdan diberi tag tag, dibuat dari ./dir.

https://docs.docker.com/compose/compose-file/#build

Javier Rojano
sumber