Bagikan melalui


Menggunakan jendela Kontainer

Anda dapat menggunakan jendela Kontainer Visual Studio untuk melihat apa yang terjadi di dalam kontainer Docker yang menghosting aplikasi Anda dan untuk melihat gambar kontainer Anda. Jika Anda terbiasa menjalankan perintah Docker untuk melihat dan menganalisis kontainer Anda, jendela ini menyediakan cara mudah untuk memantau dan berinteraksi dengan kontainer tanpa meninggalkan Ide Visual Studio.

Prasyarat

Melihat informasi tentang kontainer Anda

Jendela Kontainer terbuka secara otomatis saat Anda memulai proyek .NET dalam kontainer. Untuk membuka jendela Kontainer kapan saja, pilih Tampilkan>Kontainer> Lainnya dari menu Visual Studio. Anda juga dapat menggunakan Ctrl+Q untuk membuka kotak Pencarian Visual Studio, mengetik Kontainer, dan memilih item Kontainer .

Cuplikan layar jendela Kontainer di Visual Studio dengan kontainer dipilih di panel kiri, dan tab Lingkungan dipilih di panel kanan.

Sisi kiri jendela menunjukkan daftar kontainer di komputer lokal Anda. Kontainer yang terkait dengan solusi Anda saat ini berada di bawah Kontainer Solusi. Di sebelah kanan adalah jendela dengan tab Lingkungan, Label, Port, Volume, File, dan Log.

Jendela Kontainer terbuka secara otomatis saat Anda memulai proyek .NET dalam kontainer. Untuk membuka jendela Kontainer kapan saja, pilih Tampilkan>Kontainer> Lainnya dari menu Visual Studio, atau tekan Ctrl+K, Ctrl+O. Anda juga dapat menggunakan Ctrl+Q untuk membuka kotak Pencarian Visual Studio, mengetik Kontainer, dan memilih item Kontainer .

Cuplikan layar jendela Kontainer di Visual Studio dengan kontainer dipilih di panel kiri, dan tab Lingkungan dipilih di panel kanan.

Sisi kiri jendela menunjukkan daftar kontainer di komputer lokal Anda. Kontainer yang terkait dengan solusi Anda saat ini berada di bawah Kontainer Solusi. Di sebelah kanan adalah panel dengan tab untuk Lingkungan, Label, Port, Volume, File, Log, dan Detail.

Jika Anda menggunakan Docker Compose dan Visual Studio 2022 versi 17.7 atau yang lebih baru, Anda akan melihat pohon simpul, dengan node induk untuk solusi dan simpul anak Anda untuk setiap proyek yang terdaftar di Docker Compose.

Cuplikan layar memperlihatkan simpul Docker Compose di jendela Kontainer.

Petunjuk / Saran

Secara default, jendela Kontainer ditambatkan dengan jendela Watch saat debugger berjalan. Anda dapat dengan mudah menyesuaikan tempat jendela alat Kontainer ditempatkan. Lihat Menyesuaikan tata letak jendela di Visual Studio.

Melihat variabel lingkungan

Tab Lingkungan menunjukkan variabel lingkungan dalam kontainer. Anda dapat mengatur variabel ini di Dockerfile, dalam file .env , atau dengan menggunakan -e opsi saat Anda memulai kontainer menggunakan perintah Docker.

Nota

Perubahan pada variabel lingkungan tidak tercermin secara real time. Selain itu, variabel lingkungan di tab ini adalah variabel lingkungan sistem pada kontainer, bukan variabel lingkungan pengguna lokal ke aplikasi.

Cuplikan layar tab Lingkungan di jendela Kontainer.

Cuplikan layar tab Lingkungan di jendela Kontainer.

Lihat label

Tab Label memperlihatkan label untuk kontainer. Label adalah cara mengatur metadata kustom pada objek Docker. Visual Studio mengatur beberapa label secara otomatis.

Cuplikan layar jendela Kontainer di Visual Studio memperlihatkan tab Label.

Cuplikan layar jendela Kontainer di Visual Studio memperlihatkan tab Label.

Melihat pemetaan port

Pada tab Port , Anda dapat memeriksa pemetaan port untuk kontainer Anda. Port terkenal ditautkan, sehingga Anda dapat memilih tautan untuk membuka browser ke alamat port host.

Cuplikan layar tab Port di jendela Kontainer.

Cuplikan layar tab Port di jendela Kontainer.

Melihat tingkat suara

Tab Volume menunjukkan simpul sistem file yang dipasang, atau volume, pada kontainer.

Cuplikan layar tab Volume di jendela Kontainer.

Cuplikan layar tab Volume di jendela Kontainer.

Menampilkan sistem file

Pada tab File , Anda dapat melihat sistem file kontainer, termasuk folder aplikasi yang berisi proyek Anda. Dengan menggunakan tab File , Anda dapat melihat log aplikasi seperti log Internet Information Services (IIS), file konfigurasi, dan file konten lainnya di sistem file kontainer Anda.

Cuplikan layar tab File di jendela Kontainer.

Cuplikan layar tab File di jendela Kontainer.

Nota

Di Visual Studio 2022 versi 17.7 atau yang lebih baru, ketika menargetkan .NET 8 atau yang lebih baru, Dockerfile mungkin berisi perintah USER app, yang menentukan untuk menjalankan aplikasi dengan hak akses pengguna biasa. Tab File menggunakan izin yang sama, sehingga Anda mungkin tidak dapat melihat folder yang memerlukan izin yang ditingkatkan untuk dilihat.

Untuk membuka file di Visual Studio, klik dua kali file atau klik kanan file dan pilih Buka. Visual Studio membuka file dalam mode baca-saja.

Cuplikan layar file terbuka untuk ditampilkan di Visual Studio.

Cuplikan layar file terbuka untuk ditampilkan di Visual Studio.

Lihat log

Tab Log memperlihatkan hasil docker logs perintah. Secara default, tab menampilkan stdout dan stderr aliran pada kontainer, tetapi Anda bisa mengatur keluaran. Untuk detailnya, lihat Pencatatan Docker.

Secara default, tab Log mengalirkan log. Anda dapat menjeda aliran dengan memilih tombol Log Aliran pada tab . Pilih Log Aliran lagi untuk melanjutkan streaming dari tempat streaming ditinggalkan.

Cuplikan layar tab Log di jendela Kontainer.

Secara default, tab Log mengalirkan log. Anda dapat menjeda aliran dengan memilih tombol Stream pada tab. Pilih Streaming lagi untuk melanjutkan streaming dari tempat streaming ditinggalkan.

Cuplikan layar tab Log di jendela Kontainer.

Untuk menghapus log, gunakan tombol Hapus pada tab Log . Untuk mendapatkan semua log, gunakan tombol Refresh .

Nota

Visual Studio secara otomatis mengalihkan stdout dan stderr ke jendela Output ketika Anda menjalankan kontainer Windows tanpa debugging. Log ini kemudian tidak ditampilkan di tab Log .

Jika Anda menggunakan Docker Compose dengan Visual Studio 2022 versi 17.7 atau yang lebih baru, Anda dapat melihat log setiap kontainer secara terpisah atau diselingi ke dalam satu aliran output. Jika Anda memilih simpul induk untuk solusi, Anda akan melihat log yang terjalin dari semua proyek Compose. Kolom pertama pada setiap baris menunjukkan kontainer yang menghasilkan baris output tersebut. Jika Anda hanya ingin melihat log untuk satu kontainer, pilih simpul proyek tersebut.

Cuplikan layar memperlihatkan log yang saling terkait di tab Log dari jendela Kontainer.

Lihat detail

Tab Detail menampilkan metadata dan informasi runtime tentang konfigurasi kontainer dalam format JSON. Informasi ini mencakup variabel lingkungan, port, volume, dan pengaturan runtime lainnya.

Cuplikan layar memperlihatkan tab Detail dari jendela Kontainer.

Berinteraksi dengan kontainer

Dialog konfirmasi untuk berbagai tugas, seperti menghapus kontainer dan gambar atau meluncurkan lebih dari 10 kontainer sekaligus, mungkin menampilkan perintah. Anda dapat menonaktifkan setiap perintah dengan menggunakan kotak centang pada jendela dialog.

Anda juga dapat mengaktifkan atau menonaktifkan opsi ini dengan menggunakan pengaturan di Alat>Opsi>Alat Kontainer>Jendela Alat Kontainer. Untuk informasi selengkapnya, lihat Mengonfigurasi Alat Kontainer.

Anda juga dapat mengaktifkan atau menonaktifkan opsi ini dengan menggunakan pengaturan di Alat>Opsi>Kontainer Alat>Jendela Kontainer. Untuk informasi selengkapnya, lihat Mengonfigurasi Alat Kontainer.

Memulai, menghentikan, dan menghapus kontainer

Secara default, jendela Kontainer menunjukkan semua kontainer pada komputer yang dikelola Docker. Anda dapat menggunakan tombol toolbar di jendela Kontainer untuk memulai, menghentikan, atau menghapus kontainer. Kontainer mencantumkan pembaruan dinamis saat kontainer dibuat atau dihapus.

Untuk memilih beberapa kontainer, misalnya untuk menghapus lebih dari satu kontainer pada satu waktu, gunakan Ctrl+Select. Anda diminta untuk mengonfirmasi apakah Anda mencoba memulai atau menghapus lebih dari 10 kontainer pada satu waktu. Anda dapat menonaktifkan perintah konfirmasi jika diinginkan.

Membuka jendela terminal dalam kontainer yang sedang berjalan

Anda dapat membuka jendela terminal (prompt perintah atau shell interaktif) di kontainer dengan menggunakan tombol Buka Jendela Terminal di jendela Kontainer .

Cuplikan layar Jendela Terminal yang Terbuka di jendela Kontainer.

Cuplikan layar Jendela Terminal yang Terbuka di jendela Kontainer.

Untuk kontainer Windows, command prompt Windows terbuka. Untuk kontainer Linux, jendela terbuka menggunakan shell Bash.

Cuplikan layar jendela Bash.

Biasanya, jendela terminal terbuka di luar Visual Studio sebagai jendela terpisah. Jika Anda ingin lingkungan baris perintah diintegrasikan ke dalam Visual Studio IDE sebagai jendela alat yang dapat dikaitkan, Anda dapat menginstal Whack Whack Terminal.

Cuplikan layar jendela Bash.

Jika Anda menargetkan .NET 8 di Visual Studio 2022 versi 17.7 dan yang lebih baru, Dockerfile Anda dapat menentukan perintah USER app, yang berarti aplikasi Anda berjalan dengan izin pengguna biasa daripada izin pengguna tingkat tinggi. Terminal terbuka sesuai yang ditentukan pengguna dalam Dockerfile, yang secara app default untuk proyek .NET 8. Jika tidak ada pengguna yang ditentukan, terminal berjalan sebagai root pengguna.

Melampirkan debugger ke proses kontainer

Anda dapat melampirkan debugger ke proses yang berjalan di kontainer dengan menggunakan tombol Lampirkan ke Proses pada toolbar jendela Kontainer . Saat Anda menggunakan tombol ini, kotak dialog Lampirkan ke Proses muncul dan memperlihatkan proses yang berjalan dalam kontainer.

Cuplikan layar kotak dialog Lampirkan ke Proses.

Cuplikan layar kotak dialog Lampirkan ke Proses.

Anda dapat mengaitkan ke proses yang dikelola dalam kontainer. Untuk mencari proses di kontainer lain, pilih tombol Temukan di kotak dialog Lampirkan ke Proses , dan pilih kontainer lain dalam kotak dialog Pilih Kontainer Docker .

Lihat gambar

Anda dapat melihat gambar di komputer lokal dengan menggunakan tab Gambar di sisi kiri jendela Kontainer . Gambar yang ditarik dari repositori eksternal dikelompokkan bersama-sama dalam tampilan pohon.

Cuplikan layar memperlihatkan jendela Kontainer memperlihatkan gambar kontainer.

Panel kanan memiliki tab yang berlaku untuk gambar: Label dan Detail. Tab Detail memperlihatkan detail konfigurasi untuk gambar dalam format JSON.

Cuplikan layar memperlihatkan tab Detail Gambar > dari jendela Kontainer.

Cuplikan layar memperlihatkan jendela Kontainer memperlihatkan gambar kontainer.

Panel kanan memiliki tab yang berlaku untuk gambar: Label, Detail, dan Lapisan. Tab Detail memperlihatkan detail konfigurasi untuk gambar dalam format JSON.

Cuplikan layar memperlihatkan tab Detail Gambar > dari jendela Kontainer.

Untuk menghapus gambar, klik kanan gambar di tampilan pohon dan pilih Hapus, atau pilih gambar lalu pilih tombol Hapus pada toolbar.

Memangkas kontainer dan gambar

Anda dapat dengan mudah menghapus kontainer dan gambar yang tidak Anda gunakan dengan memilih tombol Pangkas pada toolbar jendela Kontainer .

Cuplikan layar memperlihatkan tombol pangkas.

  • Jika Anda memilih tab Kontainer , Anda diminta untuk mengonfirmasi bahwa Anda ingin menghapus semua kontainer yang tidak digunakan.

Cuplikan layar memperlihatkan tombol pangkas.

  • Jika Anda memilih tab Kontainer , Anda diminta untuk mengonfirmasi bahwa Anda ingin menghapus semua kontainer yang dihentikan.
  • Jika Anda telah memilih tab Gambar, perintah akan bertanya apakah Anda ingin menghapus semua gambar yang menggantung. Gambar terputus adalah lapisan gambar yang tidak lagi terkait dengan gambar yang ditandai. Bersihkan citra yang tidak terpakai sesekali untuk membantu menghemat ruang disk.