Câu trả lời:
Cách cụ thể để chạy nó phụ thuộc vào việc bạn đã cho hình ảnh một thẻ / tên hay không.
$ 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 cái tên (hãy sử dụng Ubuntu ):
$ docker run -i -t ubuntu:12.04 /bin/bash
Không có tên, chỉ cần sử dụng ID:
$ docker run -i -t 8dbd9e392a96 /bin/bash
Vui lòng xem Docker chạy tham khảo để biết thêm thông tin.
docker psliệt kê các container, 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 TÊN trong cam kết (ví dụ docker commit _NAME_ _imagename_)
                    Thực hiện các bước sau:
$ docker images
Bạn sẽ nhận được một danh sách tất cả các hình ảnh Docker cục bộ với các thẻ được chỉ định.
$ docker run image_name:tag_name
Nếu bạn không chỉ định, tag_namenó sẽ tự động chạy một hình ảnh với thẻ 'mới nhất'.
Thay vì image_name, bạn cũng có thể chỉ định ID hình ảnh (không có tag_name).
Để liệt kê các hình ảnh Docker
$ docker images
Nếu ứng dụng của bạn muốn chạy với cổng 80 và bạn có thể hiển thị một cổng khác để liên kết cục bộ, hãy nói 8080:
$ docker run -d --restart=always -p 8080:80 image_name:version
Bạn có thể xem hình ảnh có sẵn của mình bằng cách sử dụng:
docker images
Sau đó, bạn có thể chạy trong chế độ tách rời để thiết bị đầu cuối của bạn vẫn có thể sử dụng được. Bạn có một số tùy chọn để chạy nó bằng tên kho lưu trữ (có hoặc không có thẻ) hoặc ID hình ảnh:
docker run -d repository
docker run -d repository:tag
docker run -d image_id
Sau đó, bạn có thể kiểm tra container của bạn đang chạy bằng
docker ps
docker pscung cấp cho bạn một ID container. Bạn có thể sử dụng nó hoặc chỉ 2/3 ký tự đầu tiên để đi vào thùng chứa của bạn bằng cách sử dụng:
docker exec -it container_id /bin/bash
Và bạn có thể dừng nó bằng cách sử dụng docker stop container_idvà docker rm container_id.
Bạn cũng có thể chạy container của mình với các -rmđối số để nếu bạn dừng container của nó, nó sẽ tự động bị xóa.
Lấy tên hoặc id của hình ảnh bạn muốn chạy, bằng lệnh này:
docker images
Lệnh chạy Docker được sử dụng theo cách sau:
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
Dưới đây tôi đã bao gồm các tùy chọn công văn, tên, xuất bản, khối lượng và khởi động lại trước khi chỉ định tên hình ảnh hoặc id:
docker run -d --name  container-name -p localhost:80:80 -v $HOME/myContainer/configDir:/myImage/configDir --restart=always image-name
Ở đâu:
--detach , -d        Run container in background and print container ID
--name                Assign a name to the container
--publish , -p        Publish a container’s port(s) to the host
--volume , -v        Bind mount a volume
--restart            Restart policy to apply when a container exits
Để biết thêm thông tin, vui lòng xem tham khảo chạy Docker chính thức .
Dưới đây là một ví dụ để chạy dịch vụ webdev trong Docker. Tên của hình ảnh là morrisjobke / webdav . Bạn có thể kéo nó từ Docker Hub .
Sau khi bạn chạy những hình ảnh này, bạn có thể truy cập vào phiên bản WebDAV tại http://localhost:8888/webdav. Bên trong thư mục /var/webdavđược sử dụng như root WebDAV.
Bạn có thể chạy container này theo cách sau:
$ docker run -d -e USERNAME=test -e PASSWORD=test -p 8888:80 morrisjobke/webdav
Tôi đã từng gặp vấn đề tương tự. Tôi đã chạy hình ảnh Docker của mình và nó đã tạo ra một thùng chứa với CONTAINER_ID cụ thể. Tôi muốn làm việc với cùng một container:
Đầu tiên chạy hình ảnh Docker của bạn:
docker run -it -p 8888:8888 -p 6006:6006 -v ~/:/host waleedka/modern-deep-learning
Sau đó liệt kê tất cả các container bạn đã thực hiện:
sudo docker ps -a
Và chọn vùng chứa mà bạn muốn làm việc (của tôi là 167ddd6d7f15):
sudo docker start -ai 167ddd6d7f15
Vì bạn đã tạo một hình ảnh từ Dockerfile, nên hình ảnh hiện không ở trạng thái hoạt động. Để làm việc, bạn cần chạy hình ảnh này trong một thùng chứa.
Các $ docker imageslệnh mô tả bao nhiêu hình ảnh hiện đang có sẵn trong kho địa phương. và
docker ps -a
hiển thị có bao nhiêu container hiện đang có sẵn, tức là danh sách các container đang hoạt động và đã thoát.
Có hai cách để chạy hình ảnh trong container:
$ docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]
Trong chế độ tách ra:
-d=false: Detached mode: Run container in the background, print new container id
Trong chế độ tương tác:
-i :Keep STDIN open even if not attached
Đây là lệnh chạy Docker
$ docker run image_name:tag_name
Để làm rõ hơn về chạy Docker, bạn có thể truy cập tham chiếu chạy Docker .
Đó là tài liệu tốt nhất để hiểu Docker.
Để xem danh sách tất cả hình ảnh trên máy chủ Docker của bạn, hãy chạy:
  $ docker images
   REPOSITORY          TAG           IMAGE ID            CREATED             SIZE
   apache_snapshot     latest        13037686eac3        22 seconds ago      249MB
   ubuntu              latest        00fd29ccc6f1        3 weeks ago         111MB
Bây giờ bạn có thể chạy hình ảnh Docker dưới dạng một thùng chứa trong chế độ tương tác:
   $ docker run -it apache_snapshot /bin/bash
HOẶC nếu bạn không có bất kỳ hình ảnh cục bộ nào, Tìm kiếm Docker Hub để tìm hình ảnh để tải xuống:
    $ docker search ubuntu
    NAME                            DESCRIPTION             STARS  OFFICIAL  AUTOMATED
    ubuntu                          Ubuntu is a Debian...   6759   [OK]       
    dorowu/ubuntu-desktop-lxde-vnc  Ubuntu with openss...   141              [OK]
    rastasheep/ubuntu-sshd          Dockerized SSH ser...   114              [OK]
    ansible/ubuntu14.04-ansible     Ubuntu 14.04 LTS w...   88               [OK]
    ubuntu-upstart                  Upstart is an even...   80     [OK]
Kéo hình ảnh Docker từ kho lưu trữ bằng lệnh kéo docker:
     $ docker pull ubuntu
Chạy hình ảnh Docker như một container:
     $ docker run -it ubuntu /bin/bash
$ docker images
REPOSITORY                TAG                 IMAGE ID            CREATED            
jamesmedice/marketplace   latest              e78c49b5f380        2 days ago          
jamesmedice/marketplace   v1.0.0              *e78c49b5f380*        2 days ago          
$ docker run -p 6001:8585 *e78c49b5f380*
Đối với những người có cùng một vấn đề, nhưng gặp phải một lỗi như
rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:247: starting container process caused "exec: \"bash\": executable file not found in $PATH"
Tôi đã thêm một điểm vào hoạt động cho tôi:
docker run -it --entrypoint /bin/sh cho những hình ảnh không có Bash.
Ví dụ (từ ví dụ đã được phê duyệt):
run -it --entrypoint /bin/sh ubuntu:12.04
Tham khảo: https://gist.github.com/mitchwongho/11266726
docker ps -akhông hữu ích ở đây?