Pendahuluan
Pekerja Buruh adalah utilitas yang memungkinkan Anda membuat wadah untuk menjalankan aplikasi. Wadah Docker adalah mesin virtual yang lengkap.
Panduan ini akan menunjukkan kepada Anda tiga metode untuk SSH ke dalam wadah Docker dan menjalankan perintah.
Prasyarat
- Sistem Linux yang menjalankan Docker
- Kontainer yang telah dikonfigurasi sebelumnya dimuat dan dijalankan
- Akses ke jendela terminal/prompt perintah (Ctrl +Alt +B atau Ctrl +Alt +F2 )
- Akun pengguna dengan sudo hak istimewa
Metode 1:Gunakan docker exec untuk Menjalankan Perintah di Wadah Docker
docker exec
perintah menjalankan perintah yang ditentukan dalam wadah yang sudah berjalan. Anda dapat menggunakannya untuk SSH ke dalam wadah Docker dengan membuat bash shell (shell tempat Anda dapat mengetik perintah).
Sintaks dasar untuk menggunakan docker exec
untuk menjalankan perintah dalam container adalah:
docker exec [options] [container] [command]
Mulailah dengan menarik gambar Docker jika Anda belum melakukannya. Misalnya, Anda dapat memuat Nginx :
sudo docker pull nginx
Kemudian, jalankan gambar:
sudo docker run ––name nginx–test –d nginx
Daftar semua container yang sedang berjalan untuk diverifikasi:
sudo docker ps
Anda sekarang akan melihat gambar nginx-test Anda dimuat.
Untuk mendapatkan akses dan menjalankan perintah di wadah Docker itu, ketikkan yang berikut:
sudo docker exec –it nginx-test /bin/bash
Sekarang, Anda masuk ke nginx-test wadah. Oleh karena itu, perintah apa pun yang Anda masukkan akan dijalankan di wadah itu. –i
opsi menentukan interaktif , dan –t
mengaktifkan pengetikan terminal antarmuka.
Metode 2:Gunakan docker attach Command untuk Menghubungkan ke Running Container
docker attach
perintah menautkan input, output, dan aliran kesalahan lokal ke wadah. Secara default, ini diluncurkan dalam bash kulit . Untuk terhubung ke container yang sedang berjalan, masukkan berikut ini:
sudo docker attach container_Name
Pada contoh di bawah, sistem akan terhubung ke nginx-test wadah:
sudo docker attach nginx-test
Setelah perintah dijalankan, Anda akan bekerja di dalam wadah. Perintah apa pun yang Anda jalankan akan memengaruhi lingkungan Docker virtual.
Metode 3:Gunakan SSH untuk Menghubungkan ke Wadah Docker
Anda dapat terhubung ke wadah Docker menggunakan SSH (Secure Shell). Biasanya, SSH digunakan untuk menghubungkan dari jarak jauh melalui jaringan ke server. Teknologi ini bekerja dengan cara yang sama saat menghubungkan ke wadah Docker virtual di sistem Anda.
Langkah 1:Aktifkan SSH di Sistem
Mulailah dengan menginstal dan mengaktifkan layanan SSH:
Aktifkan SSH di Ubuntu 18.04:
sudo apt-get install ssh
sudo systemctl ssh start
sudo systemctl ssh enable
service ssh status
Aktifkan SSH di CentOS 7:
yum –y install openssh-server openssh-clients
service sshd start
service sshd enable
service sshd status
Langkah 2:Dapatkan Alamat IP Penampung
Dapatkan alamat IP container dengan menggunakan docker inspect
perintah dan menyaring hasilnya.
Untuk mesin Docker modern, gunakan perintah:
sudo docker inspect -f "{{ .NetworkSettings.IPAddress }}" container_name
Untuk mesin Docker lama, jalankan:
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name
Sistem akan menampilkan alamat IP seperti yang terlihat pada gambar di atas.
Langkah 3:SSH Ke Wadah Docker
Ping alamat IP untuk memastikannya tersedia:
ping –c 3 172.17.0.2
Gunakan alat SSH untuk menghubungkan ke gambar:
ssh [email protected]
Sistem harus meminta kata sandi pengguna root untuk wadah itu. Jika tertulis Sambungan ditolak , kemungkinan wadah tidak disediakan untuk SSH. Jika prompt berubah, Anda sekarang terhubung melalui SSH, dan dapat menjalankan perintah di container.