$ docker search --limit 5 <images name>
--limit
để giới hạn kết quả tìm kiếm, mặc định sẽ là 25
$ docker pull [options] NAME[:TAG|@DIGEST]
Trong đó NAME
là tên images
Tạo một container mới:
$ docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
Copy file/folder giữa container và local filesystem
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
Đổi tên container
docker rename CONTAINER NEW_NAME
Tạo mới một container và tự động khởi chạy nó khi tạo xong. Câu lệnh này có vai trò tương tự như câu lệnh docker create nhưng docker create còn cho phép cấu hình hình thêm các yêu cầu còn thiếu sau khi tạo ra container để có thể hoạt động đúng mục đích.
$ docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
Chạy một command bên trong container đang ở trạng thái running.
$ docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
Command | Mô tả |
---|---|
docker volume create | Tạo một volume |
docker volume inspect | Hiển thị thông tin về một hay nhiều volumes |
docker volume ls | Liệt kê volumes |
docker volume prune | Loại bỏ volumes không sử dụng |
docker volume rm | Loại bỏ một hay nhiều volumes |
Tạo một volume:
$ docker volume create [OPTIONS] [VOLUME]
$ docker build [OPTIONS] PATH | URL | -
$ docker push [OPTIONS] NAME[:TAG]
Ví dụ: Muốn push một image, ta cần phải commit image, sau đó tạo ra tag image trước khi push.
docker commit c16378f943fe rhel-httpd
docker tag rhel-httpd registry-host:5000/myadmin/rhel-httpd
docker push registry-host:5000/myadmin/rhel-httpd
docker save [OPTIONS] IMAGE [IMAGE...]
Kiểm tra thông tin ngắn gọn tất cả các container đang có trong máy
root@trang-20-51:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a8a3ce8569c1 alpine:latest "ash" 22 minutes ago Up 22 minutes no-net-alpine
48bda035a880 mysql:latest "docker-entrypoint.s…" 5 days ago Exited (0) 4 days ago db
c8e04feea14c ubuntu_ngnix2 "/venv/start.sh /bin…" 5 days ago Exited (0) 5 days ago relaxed_johnson
06bb37966ae5 ubuntu_ngnix2 "/venv/start.sh /bin…" 5 days ago Created naughty_chaplygin
0bc0405baf4d ubuntu "/bin/bash" 5 days ago Exited (0) 22 hours ago elastic_minsky
78da32873684 mysql "docker-entrypoint.s…" 10 days ago Exited (0) 10 days ago mysql1
Kiểm tra thông tin chi tiết của container dưới dạng json:
docker inspect [containerID/containerName]
Xem log mà container tạo ra:
docker logs [containerID]
Chạy docker events dưới background để theo dõi trực tiếp:
docker events&
Trong trường hợp muốn chỉ định port từ máy host vào port mà ứng dụng trong container cung cấp thì cần sử dụng tham số -p
.
docker run --name apache_test1 -p 8080:80 -p 443:443 -d eboraas/apache
Nếu bạn có một thư mục chứa code hoặc tham số cấu hình trên máy host, muốn ứng dụng trong container sử dụng được thì tham số -v
để chỉ dẫn cho container biết:
mkdir -p website && cd website
docker run --name apache_test2 -p 8080:80 -p 443:443 -v $(pwd):/var/www/ -d eboraas/apache
Lúc này khi chỉnh sửa code trên trên thư mục này ở docker host thì code trên container sẽ được thay đổi ngay lập tức
Sử dụng tham số --link
Ví dụ tạo một Drupal app (apache, php, mysql, drupal):
mkdir -p drupal-link-example && cd drupal-link-example
docker pull drupal:8.0.6-apache
docker pull mysql:5.5
Start a container for mysql
docker run --name mysql_example \
-e MYSQL_ROOT_PASSWORD=root \
-e MYSQL_DATABASE=drupal \
-e MYSQL_USER=drupal \
-e MYSQL_PASSWORD=drupal \
-d mysql:5.5
Start a Drupal container and link it with mysql: --link [name or id]:alias
docker run -d --name drupal_example \
-p 8280:80 \
--link mysql_example:mysql \
drupal:8.0.6-apache
Open http://localhost:8280 to continue with the installation. On the db host use: mysql
https://github.com/hocchudong/ghichep-docker/blob/master/docs/docker-coban/ghichep-lenh-docker.md