Cách tạo hình ảnh Docker từ vùng chứa

Cach Tao Hinh Anh Docker Tu Vung Chua



Hình ảnh Docker là một trong những thành phần chính của nền tảng Docker và đóng vai trò thiết yếu trong việc xây dựng, triển khai và vận chuyển các ứng dụng Docker bên trong vùng chứa. Hình ảnh Docker là các mẫu hoặc ảnh chụp nhanh của vùng chứa hướng dẫn vùng chứa cách chứa và triển khai ứng dụng. Hàng nghìn hình ảnh chính thức có sẵn trên sổ đăng ký Docker Hub để chứa ứng dụng. Tuy nhiên, người dùng cũng có thể tạo những hình ảnh này theo yêu cầu của mình bằng cách sử dụng dịch vụ soạn thảo Dockerfile và Docker.

Đôi khi, người dùng thực hiện các thay đổi trong cài đặt vùng chứa và cấu hình, nhưng những thay đổi này không được thực hiện trong hình ảnh Docker. Để lưu các thay đổi của vùng chứa đối với hình ảnh hoặc để tạo bản sao lưu vùng chứa, người dùng được yêu cầu tạo một hình ảnh mới từ vùng chứa. Với mục đích cụ thể đó, “ docker cam kết Lệnh ” có thể được sử dụng.

Hướng dẫn này sẽ chứng minh:







Lệnh 'docker commit' là gì?

Các ' docker cam kết Lệnh ” là một trong những tiện ích dòng lệnh của Docker được sử dụng để thực hiện các thay đổi và cài đặt vùng chứa vào hình ảnh Docker. Nó cũng được sử dụng để tạo bản sao lưu vùng chứa khi người dùng được yêu cầu dọn dẹp Docker bằng cách xóa các vùng chứa Docker. Tuy nhiên, lệnh docker commit chỉ bao gồm file container và các thay đổi cấu hình trong Docker image, nó sẽ không bao giờ lưu dữ liệu của ổ đĩa được gắn với container.



Cú pháp



docker cam kết < TÙY CHỌN > < Tên vùng chứa / ID vùng chứa > < Tên Hình ảnh >

Tùy chọn





Các tùy chọn sau đây được sử dụng với “ docker cam kết ” lệnh tạo hình ảnh từ vùng chứa theo nhiều cách khác nhau:

< mạnh > Lựa chọn mạnh > td >
< td >< mạnh > Sự miêu tả mạnh > td >
tr >
< tr >
< td >< mạnh > -Một, --tác giả mạnh > td >
< td > Nó được sử dụng để chỉ định tên của tác giả đang thực hiện các thay đổi của vùng chứa TRONG bức hình. td >
tr >
< tr >
< td >< mạnh > -c, --thay đổi mạnh > td >
< td > Thêm hướng dẫn Dockerfile để thực hiện các thay đổi TRONG một tấm ảnh. td >
tr >
< tr >
< td >< mạnh > -m, --tin nhắn mạnh > td >
< td > Thêm thông điệp cam kết hoặc bình luận trong khi tạo ra một hình ảnh từ container. td >
tr >
< tr >
< td >< mạnh > -p, --tạm dừng mạnh > td >
< td > Trong khi commit vùng chứa, theo mặc định, vùng chứa sẽ bị dừng hoặc tạm dừng. Để ngăn vùng chứa tạm dừng, “ < mạnh > --tạm dừng= SAI mạnh > ” tùy chọn được sử dụng.

Làm cách nào để tạo hình ảnh từ Docker Container?

Khi người dùng thực hiện các thay đổi trong vùng chứa Docker trực tiếp thông qua vỏ vùng chứa hoặc không tương tác, những thay đổi này sẽ không sửa đổi ảnh chụp nhanh vùng chứa. Để lưu hoặc thực hiện sửa đổi, người dùng có thể tạo hình ảnh mới từ vùng chứa bằng cách sử dụng nút “ docker cam kết ' yêu cầu. Điều này cũng hữu ích cho việc tạo bản sao lưu của vùng chứa.



Để tạo một hình ảnh thông qua vùng chứa Docker, hãy xem hình minh họa sau.

Bước 1: Tạo Dockerfile

Đầu tiên, tạo một tệp mới có tên “ Dockerfile ” và không thêm bất kỳ phần mở rộng tệp nào cùng với tên tệp. Sau đó, dán các lệnh sau vào “Dockerfile”

TỪ nginx: mới nhất

SAO CHÉP chỉ mục.html / sử dụng / chia sẻ / nginx / html / chỉ mục.html

ĐIỂM VÀO [ 'nginx' , '-g' , 'tắt daemon;' ]

Ở đây, “ TỪ Lệnh ” được sử dụng để xác định hình ảnh cơ sở vùng chứa, “ SAO CHÉP Lệnh ” sao chép tệp chương trình vào đường dẫn được chỉ định trong vùng chứa và lệnh “ ĐIỂM VÀO Lệnh ” đặt các tệp thực thi mặc định của vùng chứa.

Bước 2: Tạo tệp chương trình

Tiếp theo, tạo một tập tin khác “ chỉ mục.html ” và thêm mã HTML sau vào tệp:

< html >

< cái đầu >

< phong cách >

thân hình {

màu nền: rgb ( 9 , 4 , 4 ) ;

}

h1 {

màu sắc: rgb ( 221 , 219 , 226 ) ;

kiểu chữ: in nghiêng;

}

phong cách >

cái đầu >

< thân hình >

< h1 > Đây là trang HTML đầu tiên h1 >

thân hình >

html >

Bước 3: Xây dựng ảnh chụp nhanh của vùng chứa

Bây giờ, hãy tạo ảnh chụp nhanh của vùng chứa từ Dockerfile bằng lệnh bên dưới. Ở đây, “ -t Tùy chọn ” được sử dụng để đặt tên của ảnh chụp nhanh:

docker xây dựng -t demo-img .

Bước 4: Chạy Ảnh chụp nhanh để khởi động vùng chứa

Tiếp theo, khởi động vùng chứa bằng cách thực thi hình ảnh vùng chứa. Với mục đích này, hãy sử dụng “ docker chạy ' yêu cầu:

docker chạy -P 80 : 80 --tên demo-tiếp -d demo-img

Trong lệnh trên, “ -P ” tùy chọn đặt cổng hiển thị của container, “ -tên ” chỉ định tên vùng chứa và “ -d Tùy chọn ” chạy container ở chế độ tách rời:

Sau khi thực thi vùng chứa, hãy điều hướng đến “ http://localhost:80 ” URL và kiểm tra xem chương trình được chứa có thể truy cập được trên cổng hiển thị hay không:

Kết quả đầu ra trên cho thấy chúng ta đã khởi động container thành công.

Bước 5: Tạo tệp chương trình mới

Đôi khi, người dùng có thể được yêu cầu thêm các chức năng bổ sung vào ứng dụng đang chạy. Với mục đích này, người dùng có thể cần thực hiện các thay đổi trong tệp chương trình hoặc có thể thêm các tệp bổ sung vào ứng dụng.

Với mục đích này, hãy tạo một tệp khác có tên “ chỉ mục1.html ” và dán đoạn mã sau vào tệp:

< html >

< cái đầu >

< phong cách >

thân hình {

màu nền: rgb ( 106 , 103 , 103 ) ;

}

h1 {

màu sắc: rgb ( 221 , 219 , 226 ) ;

kiểu chữ: in nghiêng;

}

phong cách >

cái đầu >

< thân hình >

< h1 > Đây là trang HTML thứ hai h1 >

thân hình >

html >

Bước 6: Sao chép tệp chương trình mới trong vùng chứa

Để sao chép tệp mới vào đường dẫn vùng chứa, hãy sử dụng nút “ docker cp :<đường dẫn đích của container> ' yêu cầu. Ở đây, chúng tôi đã sao chép “ chỉ mục1.html ” tập tin vào “ demo-tiếp ” đường dẫn được chỉ định của container:

docker cp bản demo tiếp theo của index1.html: / sử dụng / chia sẻ / nginx / html / chỉ mục1.html

Bước 7: Cam kết thay đổi vùng chứa trong hình ảnh mới

Sau khi thực hiện các thay đổi trong vùng chứa, người dùng được yêu cầu thực hiện các thay đổi đối với hình ảnh Docker mới. Hình ảnh này sẽ được tạo thông qua vùng chứa Docker. Với mục đích này, hãy chạy chương trình “ docker cam kết ' yêu cầu:

docker cam kết demo-cont new-demo-img

Ghi chú: Thực hiện các thay đổi trong vùng chứa Docker trước khi tạo hình ảnh thông qua “ docker cam kết Lệnh ” không bắt buộc. Người dùng có thể trực tiếp sử dụng “docker commit” để tạo bản sao lưu của vùng chứa bằng cách tạo hình ảnh.

Bước 8: Xác nhận

Để kiểm tra xem hình ảnh có được tạo hay không thông qua vùng chứa, hãy liệt kê các hình ảnh Docker bằng cách sử dụng lệnh “ hình ảnh docker ' yêu cầu:

hình ảnh docker

Đầu ra bên dưới cho thấy rằng chúng tôi đã tạo thành công “ bản demo mới-img ' từ ' demo-tiếp ' thùng đựng hàng:

Ghi chú: Để đẩy hình ảnh Docker vào sổ đăng ký trung tâm Docker, người dùng cũng có thể gắn thẻ hình ảnh bằng cách sử dụng “ thẻ docker ' yêu cầu:

thẻ docker < Tên Hình ảnh > < tên kho lưu trữ >>< Tên Hình ảnh > : < nhãn / phiên bản >

Bước 9: Loại bỏ container cũ

Bây giờ, hãy loại bỏ vùng chứa cũ hơn. Với mục đích này, trước tiên, hãy dừng vùng chứa Docker bằng lệnh “ dừng docker ' yêu cầu:

docker dừng demo-cont

Sau khi dừng thùng chứa, hãy sử dụng “ docker rm ” lệnh xóa nó khỏi Docker:

docker rm demo-tiếp

Bước 10: Chạy vùng chứa mới từ hình ảnh đã cam kết mới

Bây giờ, hãy khởi động phiên bản mới hoặc vùng chứa Docker bằng hình ảnh mới được tạo thông qua nút “ docker chạy ' yêu cầu:

docker chạy -P 80 : 80 --tên demo-tiếp -d bản demo mới-img

Bây giờ, hãy điều hướng đến “ máy chủ cục bộ:80 ” port và kiểm tra xem ứng dụng HTML có chạy hiệu quả hay không:

Để kiểm tra tập tin mới được sao chép đó là “ chỉ mục1.html ”, sử dụng “ http://localhost/index1.html ” URL:

Kết quả đầu ra trên cho thấy các thay đổi đã cam kết đã được lưu thành công trong “ bản demo mới-img ” Hình ảnh Docker và chúng tôi đã chạy vùng chứa đã sửa đổi một cách hiệu quả.

Làm cách nào để đặt tác giả của hình ảnh?

Các ' docker cam kết Lệnh ” cũng hỗ trợ các tùy chọn khác nhau để thêm thông tin bổ sung cùng với các thay đổi đã cam kết như tác giả của các thay đổi mới, thông báo cam kết, v.v.

Để chỉ định tác giả của hình ảnh đang thực hiện các thay đổi mới, hãy thực hiện các bước đã cho.

Bước 1: Đặt tác giả của hình ảnh

Để chỉ định tác giả của hình ảnh đang thực hiện thay đổi, hãy sử dụng “ -Một ' hoặc ' -tác giả ” tùy chọn cùng với “ docker cam kết ' yêu cầu:

docker cam kết -Một rafia demo-cont new-demo-img

Bước 2: Kiểm tra hình ảnh

Để xác minh xem tác giả của hình ảnh có được đặt hay không, hãy kiểm tra hình ảnh mới được tạo bằng cách sử dụng nút “ docker kiểm tra ' yêu cầu:

docker kiểm tra new-demo-img

Kết quả đầu ra cho thấy chúng ta đã thiết lập tác giả của hình ảnh một cách hiệu quả:

Làm cách nào để đặt thông báo cam kết về hình ảnh?

Để đặt thông báo cam kết cùng với các thay đổi cam kết, hãy sử dụng nút “ -m ' lựa chọn. Để minh họa, hãy làm theo các hướng dẫn dưới đây.

Bước 1: Đặt thông báo cam kết của hình ảnh

Để đặt thông báo cùng với các thay đổi đã cam kết, hãy sử dụng nút “ docker commit -m <“message”> ' yêu cầu:

docker cam kết -Một sợi cọ -m 'Hình ảnh này được tạo bởi vùng chứa' demo-cont new-demo-img

Bước 2: Kiểm tra hình ảnh

Để kiểm tra thông báo cam kết, hãy kiểm tra hình ảnh thông qua nút “ docker kiểm tra ' yêu cầu:

docker kiểm tra new-demo-img

Bên dưới ' Bình luận ” key, người dùng có thể thấy thông báo cam kết như bên dưới:

Đó là tất cả về việc tạo hình ảnh Docker từ vùng chứa.

Phần kết luận

Để tạo hình ảnh Docker từ vùng chứa, trước tiên, hãy thực hiện các thay đổi trong vùng chứa Docker. Sau đó, hãy sử dụng “ docker cam kết ” lệnh để tạo hình ảnh từ vùng chứa. Bây giờ, hãy xóa vùng chứa cũ hơn và bắt đầu phiên bản mới thông qua hình ảnh mới được tạo. Người dùng cũng có thể đặt tên tác giả của hình ảnh bằng cách sử dụng nút “ -Một ” và xác nhận tin nhắn bằng cách sử dụng “ -m ' lựa chọn. Blog này đã minh họa cách tạo hình ảnh từ vùng chứa Docker.