Bagaimana docker nginx menggunakan berbilang projek
Prasyarat
1 Docker telah dipasang pada komputer dan pelayan tempatan Anda boleh memuat turunnya di Google
2 hab, daftar untuk pintu penghantaran:
3 Anda perlu biasa dengan docker dan memahami beberapa arahan dalam dockerfile
Gunakan dockerfile untuk membuat imej
Jika mesin ini Terdapat projek yang dipanggil web
Buat fail docker baharu dalam direktori akar web dan tulis kandungan berikut
from nginx:1.13.6-alpine label maintainer="lilywang <lilywang.cd@gmail.com>" arg tz="asia/shanghai" env tz ${tz} run apk upgrade --update \ && apk add bash tzdata \ && ln -sf /usr/share/zoneinfo/${tz} /etc/localtime \ && echo ${tz} > /etc/timezone \ && rm -rf /var/cache/apk/* copy dist /usr/share/nginx/html cmd ["nginx", "-g", "daemon off;"]
Pada masa ini, struktur fail dalam web ialah:
. |____dockerfile |____dist // 为项目打包后的文件 | |____index.html
Seterusnya, masukkan direktori web dalam bash
cd web docker build -t lilywang711/web .
Jika anda melihat perkara berikut dalam maklumat cetakan, ini bermakna imej telah berjaya dibina
berjaya membina 4c050212ce0d
berjaya menandakan lilywang711/web: terkini
Anda juga boleh memasukkan docker images
untuk melihat senarai imej semasa
Kemudian masukkan arahan docker push lilywang711/web
untuk memuat naik imej yang baru anda bina ke hab docker untuk memudahkan menunggu Kami akan menarik imej pada pelayan kemudian
Jika terdapat beberapa projek yang perlu digunakan, hanya ulangi langkah di atas dan bina seberapa banyak imej. kerana terdapat projek
Penyerahan sisi pelayan
Log masuk Ssh ke pelayan, buat folder nginx baharu dalam direktori pengguna semasa (saya adalah direktori akar), dan buat nginx.conf baharu di dalamnya
Tulis dalam nginx.conf Masukkan kandungan berikut
user nginx; worker_processes 2; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { use epoll; worker_connections 2048; } http { include /etc/nginx/mime.types; # include /etc/nginx/conf.d/*.conf; root /usr/share/nginx/html; index index.html index.htm; server { listen 80; server_name a.yourdomain.cn; location / { } } server { listen 80; server_name b.yourdomain.cn; location / { proxy_pass http://your_vps_ip:81; } } server { listen 80; server_name localhost; location / { } } }
Seterusnya
Mulakan docker systemctl start docker
Tarik dua imej anda baru sahaja membuat dan memuat naik
docker pull lilywang711/web
docker pull lilywang711/web1
Masukkan arahan berikut untuk memulakan bekas
docker run -itd --name web -p 80:80 -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf lilywang711/web // -i 交互模式运行容器, -t 为容器分配一个伪终端,-d 后台运行容器,可直接连写 -itd // --name 是给该容器起个叫web的名字,方便辨识 // -p 是绑定端口 本机端口80:容器端口80 // -v 声明volume,意思是将容器中的/etc/nginx/nginx.conf 挂载到 宿主机里的/root/nginx/nginx.conf,以后配置nginx只需要修改/root/nginx/nginx.conf就行了
Begitu juga dengan yang lain imej lilywang711/web1, cuma tukar port dan nama
docker run -itd --name web1 -p 81:80 -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf lilywang711/web1
Pada ketika ini masukkan docker ps
dan anda dapat melihat bahawa kedua-dua bekas sudah berjalan
Projek dockerized dan penempatan pada nginx telah selesai
Masukkan http://a.yourdomain.cn dan http://b.yourdomain.cn dalam penyemak imbas untuk melihat kesan, yang sepadan dengan projek web dan web1 dalam komputer tempatan masing-masing
Atas ialah kandungan terperinci Bagaimana docker nginx menggunakan berbilang projek. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Langkah -langkah untuk mengemas kini imej Docker adalah seperti berikut: Tarik tag imej terkini imej baru memadam imej lama untuk tag tertentu (pilihan) mulakan semula bekas (jika diperlukan)

Cara memulakan semula bekas Docker: Dapatkan ID Container (Docker PS); Hentikan bekas (Docker Stop & lt; container_id & gt;); Mulakan bekas (Docker Start & lt; container_id & gt;); Sahkan bahawa permulaan semula berjaya (Docker PS). Kaedah lain: Docker mengarang (Docker-Compose Restart) atau Docker API (lihat Dokumentasi Docker).

Kaedah untuk menyalin fail ke tuan rumah luaran di Docker: Gunakan arahan CP Docker: Jalankan Docker CP [Options] & lt; Container Path & GT; & lt; PATH HOST & GT;. Menggunakan jumlah data: Buat direktori pada tuan rumah, dan gunakan parameter -V parameter untuk memasang direktori ke dalam bekas apabila membuat bekas untuk mencapai penyegerakan fail bidirectional.

Empat cara untuk keluar dari Docker Container: Gunakan Ctrl D di terminal kontena masukkan perintah keluar di terminal kontena Gunakan Docker Stop & lt; container_name & gt; Perintah Gunakan Docker Kill & lt; container_name & gt; Perintah di terminal tuan rumah (keluar kuasa)

Bagaimana cara menggunakan desktop Docker? Docktop Docktop adalah alat untuk menjalankan bekas Docker pada mesin tempatan. Langkah -langkah untuk digunakan termasuk: 1. Pasang desktop Docker; 2. Mulakan desktop Docker; 3. Buat imej Docker (menggunakan Dockerfile); 4. Membina imej Docker (menggunakan Docker Build); 5. Jalankan bekas Docker (menggunakan Docker Run).

Kaedah Melihat Proses Docker: 1. Docker CLI Command: Docker PS; 2. Systemd CLI Command: Sistem Status SistemCTL; 3. Docker mengarang arahan CLI: Docker-Compose PS; 4 Proses Explorer (Windows); 5. /Direktori Proc (Linux).

Langkah Penyelesaian Masalah untuk Gagal Docker Image Build: Semak Sintaks Dockerfile dan Versi Ketergantungan. Semak jika konteks binaan mengandungi kod sumber dan kebergantungan yang diperlukan. Lihat log binaan untuk butiran ralat. Gunakan pilihan sasaran untuk membina fasa hierarki untuk mengenal pasti titik kegagalan. Pastikan anda menggunakan versi terkini Enjin Docker. Bina imej dengan --t [nama imej]: mod debug untuk debug masalah. Semak ruang cakera dan pastikan ia mencukupi. Lumpuhkan Selinux untuk mengelakkan gangguan dengan proses binaan. Tanya platform komuniti untuk mendapatkan bantuan, sediakan dockerfiles dan bina deskripsi log untuk cadangan yang lebih spesifik.

Proses memulakan MySQL di Docker terdiri daripada langkah -langkah berikut: Tarik imej MySQL untuk membuat dan memulakan bekas, tetapkan kata laluan pengguna root, dan memetakan sambungan pengesahan port Buat pangkalan data dan pengguna memberikan semua kebenaran ke pangkalan data
