GNU/Linux >> Belajar Linux >  >> Panels >> Docker

Cara Menjalankan Nginx dalam Wadah Docker:Panduan Langkah demi Langkah

Dalam tutorial ini, Anda akan mempelajari cara menjalankan Nginx sebagai container Docker dan mengeksposnya ke jaringan lokal Anda.

Selain itu, Anda akan mempelajari cara membuat volume data Docker untuk berbagi informasi antara container dan sistem file host.

Nginx adalah perangkat lunak open-source populer yang digunakan untuk melayani web, reverse proxy, caching, load balancing, dll. Ini cukup populer dan digunakan di banyak situs web dengan lalu lintas tinggi saat ini. Salah satu beban kerja Docker yang paling umum adalah menggunakannya untuk menampung server web. Kami akan menunjukkan cara mengaturnya dengan Nginx. Jadi, biarkan kami memandu Anda melalui prosesnya.

Docker adalah platform containerization yang mengemas aplikasi Anda menjadi satu image container yang mudah dikelola.

Prasyarat

Anda harus memenuhi persyaratan berikut untuk menyelesaikan tutorial ini:

  1. Docker harus diinstal dan dijalankan secara lokal di sistem Anda.
  2. Anda memerlukan akun root, atau pengguna dapat menjalankan perintah sudo.

Menyiapkan Nginx Di Dalam Docker

Menarik Gambar

Pertama, kita akan menarik gambar resmi Nginx. Jalankan perintah tarik Docker berikut di terminal untuk mendownload gambar terbaru Nginx dari hub Docker di host Docker Anda.

sudo docker pull nginx

Jalankan Nginx Docker Container

Kami siap  menjalankan container Nginx Docker dan mengekspos portnya ke jaringan lokal Anda. Untuk melakukan ini, kami menjalankan gambar dengan perintah:

sudo docker run -d -p 80:80 --name my-nginx-server nginx
  • -d – Mulai penampung dalam mode terpisah (wadah berjalan di latar belakang).
  • -p – Mengikat port dari container ke host (merutekan port traffic host 80 ke port container 80).
  • -name – Nama wadah Docker kami.

Argumen terakhir, nginx , memberi tahu Docker gambar mana yang akan digunakan untuk container.

Sekarang buka browser dan arahkan ke alamat host tempat Anda menjalankan wadah Nginx Anda. Dalam kasus saya, ini http://192.168.122.101 . Halaman default server web Nginx akan menyambut Anda.

Itu ada. Anda memiliki instance container Nginx Docker yang berfungsi.

Mencantumkan Kontainer Docker

Untuk membuat daftar semua container Docker yang sedang berjalan, jalankan perintah berikut:

sudo docker container ls

Berdasarkan output di atas, kita dapat menghentikan container Nginx Docker dengan salah satu dari dua berikut:

sudo docker stop 19411f8b3f35
sudo docker stop my-nginx-server

Untuk melihat semua penampung, bahkan penampung yang tidak berjalan, Anda perlu menambahkan -a bendera.

sudo docker container ls -a

Berbagi Data Antara Kontainer Nginx Docker dan Host

Kontainer buruh pelabuhan bersifat sementara. Secara default, semua data yang dibuat di dalam penampung hanya tersedia dari dalam penampung dan hanya saat penampung sedang berjalan.

Jadi, izinkan kami menunjukkan kepada Anda cara membuat data dari dalam wadah dapat diakses di mesin host. Target kami adalah membuat file HTML sederhana, menyimpannya di dalam wadah dan menyajikannya di luar menggunakan wadah Nginx Docker.

Penyiapan ini memungkinkan kami memiliki konten situs web persisten yang dihosting di luar penampung.

Untuk mencapai fungsi ini, kami akan menggunakan fitur pemasangan ikatan di Docker. Saat Anda menggunakan pengikatan pengikatan, file atau direktori di mesin host dipasang ke dalam penampung.

Jadi, pertama-tama mari kita buat direktori baru untuk konten situs web Anda di dalam direktori home.

mkdir ~/www

Sekarang mari kita buat file HTML sederhana dan letakkan beberapa teks di halaman indeks Anda.

vim ~/www/index.html
<html>
<head>
<title>Nginx Docker</title>
</head>
<body>
<h1>My static page.</h1>
</body>
</html>

Silakan salin cuplikan di atas dan tempel di dalamnya. Kemudian, simpan file dan keluar dari Vim.

Selanjutnya kita akan menjalankan container Nginx Docker dengan volume terpasang pada container /usr/share/nginx/html hingga saat ini di host www direktori tempat index.html file disimpan.

docker run -d -p 80:80 -v ~/www:/usr/share/nginx/html/ --name my-nginx-server nginx

Wadah Nginx diatur secara default untuk mencari halaman indeks di /usr/share/nginx/html/ . Pada perintah di atas, -v opsi mengatur volume pengikatan mount yang menautkan /usr/share/nginx/html/ direktori dari dalam wadah Nginx Docker ke ~/www direktori pada mesin host.

Docker menggunakan simbol titik dua (: ) untuk memisahkan jalur host dari jalur penampung. Ingat, jalur host selalu didahulukan.

Sekali lagi, jika Anda menelusuri http://192.168.122.101 , Anda akan mendapatkan output yang diberikan di bawah ini di jendela browser.

Itu saja. Anda sekarang memiliki container Nginx Docker yang sedang berjalan yang melayani halaman web kustom.

Kesimpulan

Nginx dan Docker bekerja sama dengan sangat baik. Tutorial ini menunjukkan cara mengatur dan menggunakan wadah Nginx Docker. Anda juga tahu cara berbagi informasi antara wadah dan sistem file host.

Jika ada pertanyaan, silakan tinggalkan komentar Anda.


Docker
  1. Instal NGINX di openSUSE - Panduan langkah demi langkah?

  2. Bagaimana Cara Menjalankan Program Di Dalam Wadah Docker?

  3. Cara Menyebarkan Wadah nginx dengan Docker di Linode

  1. Pengantar Docker

  2. Cara Menjalankan Perintah di Running Docker Container

  3. Tidak dapat menjalankan NGINX Docker karena "13:Izin ditolak"

  1. Cara Menjalankan MySQL di Docker Container:Panduan Sederhana dan Mudah Diikuti

  2. Cara Menjalankan MySQL Dalam Wadah Docker

  3. Bagaimana cara menjalankan Nginx di dalam wadah Docker tanpa berhenti?