2013-08-28 63 views
243

Tôi đã tạo hình ảnh đế từ dockerfile. Tôi thấy hình ảnh được xây dựng thành công, nhưng tôi phải làm gì với nó? Không nên nó có thể chạy như một container?Chạy Hình ảnh Docker làm Vùng chứa

Mới đối với docker vì vậy có lẽ là một sự hiểu lầm về phía tôi, mọi sự trợ giúp sẽ rất tuyệt vời.

Trả lời

390

Cách cụ thể để chạy tùy thuộc vào việc bạn đã cung cấp hình ảnh cho thẻ/tên hay không.

$ docker images 
[email protected]:~# docker images 
REPOSITORY   TAG     ID     CREATED    SIZE 
ubuntu    12.04    8dbd9e392a96  4 months ago  131.5 MB (virtual 131.5 MB) 

Với một tên (hãy sử dụng ubuntu):

$ docker run -i -t ubuntu:12.04 /bin/bash 

Nếu không có một cái tên, chỉ sử dụng ID:

$ docker run -i -t 8dbd9e392a96 /bin/bash 

Xin xem https://docs.docker.com/engine/reference/run/ để biết thêm thông tin.

+2

Vì vậy, tên con người thân thiện in dưới 'NAME' trong 'Docker ps -a' không phải là hữu ích ở đây? – ThorSummoner

+4

'docker ps' liệt kê các vùng chứa chứ không phải hình ảnh. Nếu bạn muốn tạo một hình ảnh từ một container, bạn phải 'docker commit'.Bạn có thể sử dụng _NAME_ trong cam kết (ví dụ: 'docker commit _NAME_ _imagename_') – Andy

+1

@Andy Tại sao chúng ta sử dụng/bin/bash ở cuối? Tôi cũng mới –

22

Đỗ bước sau:

  1. $ docker images

    bạn sẽ nhận được danh sách của tất cả các hình ảnh Docker địa phương với các thẻ quy định.

  2. $ docker run image_name:tag_name

    Nếu bạn không chỉ định tag_name nó sẽ tự động chạy hình ảnh có từ khóa 'mới nhất'.

    Thay vì image_name bạn cũng có thể chỉ định Id hình ảnh (không có tên người dùng).

1

Dưới đây là ví dụ để chạy dịch vụ webdev trong trình docker.
Tên của hình ảnh là morrisjobke/webdav. Bạn có thể kéo nó từ dockerhub.

Sau khi bạn chạy hình ảnh này, bạn có thể truy cập cá thể WebDAV tại http://localhost:8888/webdav. Nội bộ thư mục /var/webdav được sử dụng làm gốc WebDAV.

Bạn có thể chạy chứa này theo cách sau: $ docker run -d -e USERNAME=test -e PASSWORD=test -p 8888:80 morrisjobke/webdav

4
  • Để liệt kê những hình ảnh Docker
$ docker images 
  • Nếu ứng dụng của bạn muốn chạy trong 80 cảng
$ docker run -d --restart=always -p 80:80 image_name:version 
Các vấn đề liên quan