Saya membuat gambar Docker dari dockerfile. Saya melihat gambar berhasil dibangun, tetapi apa yang harus saya lakukan dengannya? Bukankah seharusnya bisa berjalan sebagai wadah?
docker
docker-image
ledakan
sumber
sumber
docker ps -a
tidak berguna di sini?docker ps
daftar kontainer, bukan gambar. Jika Anda ingin membuat gambar dari sebuah wadah, Anda harusdocker commit
. Anda dapat menggunakan NAME di komit (mis.docker commit _NAME_ _imagename_
)Lakukan langkah-langkah berikut:
$ docker images
Anda akan mendapatkan daftar semua gambar Docker lokal dengan tag yang ditentukan.
$ docker run image_name:tag_name
Jika Anda tidak menentukannya
tag_name
akan secara otomatis menjalankan gambar dengan tag 'terbaru'.Alih-alih
image_name
, Anda juga dapat menentukan ID gambar (tanpa tag_name).sumber
Untuk membuat daftar gambar Docker
Jika aplikasi Anda ingin dijalankan dengan port 80, dan Anda dapat mengekspos port lain untuk mengikat secara lokal, katakanlah 8080:
sumber
Anda dapat melihat gambar yang tersedia menggunakan:
Kemudian Anda dapat menjalankan dalam mode terpisah sehingga terminal Anda masih dapat digunakan. Anda memiliki beberapa opsi untuk menjalankannya menggunakan nama repositori (dengan atau tanpa tag) atau ID gambar:
Kemudian Anda dapat memeriksa wadah Anda sedang berjalan menggunakan
docker ps
memberi Anda ID kontainer. Anda dapat menggunakannya atau hanya 2/3 karakter pertama untuk masuk ke wadah Anda menggunakan:Dan Anda dapat menghentikannya menggunakan
docker stop container_id
dandocker rm container_id
.Anda juga dapat menjalankan wadah Anda dengan
-rm
argumen sehingga jika Anda menghentikan wadah Anda itu akan dihapus secara otomatis.sumber
Dapatkan nama atau id dari gambar yang ingin Anda jalankan, dengan perintah ini:
Perintah run Docker digunakan dengan cara berikut:
Di bawah ini saya telah menyertakan opsi pengiriman, nama, publikasi, volume dan mulai ulang sebelum menentukan nama gambar atau id:
Dimana:
Untuk informasi lebih lanjut, silakan lihat referensi run Docker resmi .
sumber
Berikut adalah contoh untuk menjalankan layanan webdev di Docker. Nama gambar adalah morrisjobke / webdav . Anda dapat menariknya dari Docker Hub .
Setelah Anda menjalankan gambar ini, Anda kemudian dapat mengakses contoh WebDAV di
http://localhost:8888/webdav
. Secara internal folder/var/webdav
tersebut digunakan sebagai root WebDAV.Anda dapat menjalankan wadah ini dengan cara berikut:
sumber
Saya memiliki masalah yang sama. Saya menjalankan gambar Docker saya, dan itu menciptakan sebuah wadah dengan CONTAINER_ID tertentu. Saya ingin bekerja dengan wadah yang sama:
Pertama jalankan gambar Docker Anda:
Kemudian daftarkan semua wadah yang telah Anda buat:
Dan pilih wadah yang ingin Anda kerjakan (milik saya adalah 167ddd6d7f15):
sumber
Karena Anda telah membuat gambar dari Dockerfile, gambar saat ini tidak dalam keadaan aktif. Agar berfungsi, Anda perlu menjalankan gambar ini di dalam sebuah wadah.
The
$ docker images
perintah menjelaskan berapa banyak gambar yang saat ini tersedia di repositori lokal. danmenunjukkan berapa banyak wadah yang saat ini tersedia, yaitu daftar wadah yang aktif dan keluar.
Ada dua cara untuk menjalankan gambar dalam wadah:
Dalam mode terpisah:
Dalam mode interaktif:
Berikut adalah perintah jalankan Docker
Untuk klarifikasi lebih lanjut tentang proses Docker, Anda dapat mengunjungi referensi proses Docker .
Ini bahan terbaik untuk memahami Docker.
sumber
Untuk melihat daftar semua gambar di host Docker Anda, jalankan:
Sekarang Anda dapat menjalankan gambar Docker sebagai wadah dalam mode interaktif:
ATAU jika Anda tidak memiliki gambar secara lokal, Cari Docker Hub untuk mengunduh gambar:
Tarik gambar Docker dari repositori dengan perintah docker pull:
Jalankan gambar Docker sebagai wadah:
sumber
sumber
Bagi mereka yang memiliki masalah yang sama juga, tetapi mengalami kesalahan seperti
Saya menambahkan titik masuk yang berfungsi untuk saya:
docker run -it --entrypoint /bin/sh
untuk gambar tanpa Bash.Contoh (dari contoh yang disetujui):
Referensi: https://gist.github.com/mitchwongho/11266726
sumber