Docker 基本命令

2022-01-02 ImportNew

(點擊上方公眾號,可快速關注)

來源:Listen ,

listenzhangbin.com/post/2016/08/docker-docker-basic-command/

Docker是一個近年來非常火熱的開源項目,使用Docker作為容器並將我們的應用程式運行在Docker中方便部署及測試,也利於開發環境的隔離。最近簡單地學習了一下Docker的基本使用,在此做一個學習筆記。

安裝

使用的第一步當然就是安裝了,可以到Docker的官網上,根據不同作業系統下載安裝即可。

安裝完成之後可以在命令行中運行

docker --version

如果安裝正確,那麼會輸出相應的版本信息

Docker version 1.12.0, build 8eab29e

Docker鏡像(image)命令

安裝完成之後,就可以下載鏡像了。類似於Github,Docker也有一個DockerHub,當我們pull鏡像的時候是從DockerHub上下載相應的鏡像。除了可以在https://registry.hub.docker.com/檢索鏡像以外,還可以使用以下命令檢索:

Docker鏡像搜索

docker search 鏡像名

比如搜索Redis鏡像:

docker search redis

可以得到以下結果:

NAME                      DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED

redis                     Redis is an open source key-value store th...   2626      [OK]       

sameersbn/redis                                                           33                   [OK]

torusware/speedus-redis   Always updated official Redis docker image...   30                   [OK]

bitnami/redis             Bitnami Redis Docker Image                      23                   [OK]

anapsix/redis             11MB Redis server image over AlpineLinux        6                    [OK]

webhippie/redis           Docker images for redis                         5                    [OK]

williamyeh/redis          Redis image for Docker                          3                    [OK]

clue/redis-benchmark      A minimal docker image to ease running the...   3                    [OK]

unblibraries/redis        Leverages phusion/baseimage to deploy a ba...   2                    [OK]

miko2u/redis              Redis                                           1                    [OK]

greytip/redis             redis 3.0.3                                     1                    [OK]

servivum/redis            Redis Docker Image                              1                    [OK]

kampka/redis              A Redis image build from source on top of ...   1                    [OK]

appelgriebsch/redis       Configurable redis container based on Alpi...   0                    [OK]

yfix/redis                Yfix docker redis                               0                    [OK]

cloudposse/redis          Standalone redis service                        0                    [OK]

watsco/redis              Watsco redis base                               0                    [OK]

nanobox/redis             Redis service for nanobox.io                    0                    [OK]

xataz/redis               Light redis image                               0                    [OK]

trelllis/redis            Redis Replication                               0                    [OK]

khipu/redis               customized redis                                0                    [OK]

maestrano/redis           Redis is an open source key-value store th...   0                    [OK]

rounds/10m-redis          redis for hubot brain                           0                    [OK]

higebu/redis-commander    Redis Commander Docker image. https://gith...   0                    [OK]

drupaldocker/redis        Redis for Drupal                                0                    [OK]

可以看到第一個就是官方的鏡像。

鏡像下載

檢索到鏡像之後就是下載鏡像,還是以Redis為例:

docker pull redis

鏡像列表

下載完成之後可以查看本地鏡像

docker images

 

#output:

 

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

redis               latest              50e38ce0458f        3 days ago          185 MB

REPOSITORY是鏡像名;TAG是軟體版本,latest為最新版;IMAGE ID是當前鏡像的唯一標示;CREATED是當前鏡像創建時間;SIZE是當前鏡像的大小。

鏡像刪除

如果需要刪除一個鏡像,可以使用以下命令

docker rmi image-id

刪除所有鏡像

docker rmi ${docker images -q}

Docker容器命令

容器基本操作

最簡單的運行鏡像為容器

docker run —-name container-name -d image-name

–name參數是為容器取的名字,-d表示detached,在後臺運行容器,image-name是要使用哪個鏡像來運行容器。

運行一個Redis容器

docker run --name test-redis -d redis

容器列表

查看運行中的容器列表

docker ps

可以看到我們之前運行的Redis容器

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES

b45e490b7f99        redis               "docker-entrypoint.sh"   15 minutes ago      Up 4 seconds        6379/tcp            test-redis

CONTAINER ID是在啟動的時候Docker生成的ID;IMAGE是該容器使用的鏡像;COMMAND是容器啟動時調用的命令;CREATED是容器的創建時間;STATUS是當前容器的狀態;PORTS是容器系統所使用的埠號(注意,這裡的埠號不是本機的埠號),Redis默認使用6379埠;NAMES是給容器定義的名稱。

查看運行和停止狀態的容器

docker ps -a

停止和啟動容器

停止容器

docker stop container-name/container-id

通過容器名稱或者容器id來停止容器,例如停止之前的Redis容器:

docker stop test-redis

啟動容器

docker start container-name/container-id

再次啟動之前的容器

docker start test-redis

埠映射

Docker中運行的程序的埠是不能直接訪問的,需要映射到本地,通過-p參數實現,例如將6379埠映射到本機的6378埠

docker run -d -p 6378:6379 —-name port-redis redis

運行一個名字為port-redis的容器,使用redis鏡像,將Docker中的redis的6379埠映射到本機的6378埠。

映射完成之後我們就可以連接Redis進行開發等等,非常方便。

刪除容器

刪除單個容器

docker rm container-id

刪除所有容器

docker rm ${docker ps -a -q}

容器日誌

查看當前容器的日誌

docker logs container-name/container-id

我們可以查看之前redis鏡像的容器

docker logs test-redis

可以看到redis啟動的日誌

登錄容器

運行中的容器其實就是一個完備的Linux作業系統,我們可以登錄訪問當前容器,登錄後可以在容器中進行常規的Linux操作。

docker exec -it container-id/container-name bash

使用exit命令退出當前登錄。

看完本文有收穫?請轉發分享給更多人

關注「ImportNew」,看技術乾貨

相關焦點

  • Docker基本使用命令
    # 以Redis為例子docker pull redisdocker run \-d \ # 後臺運行--name redis6 \ # 自定義名字-p 6379:6379 \ # 埠映射redis # 鏡像名稱docker run -d --name redis6 -p 6379:6379 redis
  • 八個基本的 Docker 容器管理命令
    在本文中,我將介紹八個基本的 Docker 容器命令,這些命令對於在 Docker 容器上執行基本操作很有用,比如運行,列表,停止,查看日誌,刪除等等。如果你對 Docker 的概念不熟悉,推薦你推薦你到網上查看相關的入門介紹,這篇文章就不詳細介紹了。 現在我們趕快進入要了解的命令中:如何運行 Docker 容器?
  • Docker命令
    下面依次介紹了RUN一個鏡像(docker run),自己創建鏡像(Dockerfile語法 和 docker build)。在介紹它的最基本用法之後,開始初步深入它的原理和內核技術,不求理解,只求一個印象 :-)。深入部分會越來越細緻,不斷完善。
  • Docker安裝基本命令操作,帶你了解鏡像和容器的概念!
    ① 如果有安裝過docker的小夥伴,可以執行下面命令進行刪除:[root@VM-0-3-centos /]# yum -y remove docker完整名字② 如果安裝過,那麼再將鏡像/容器刪除,命令如下:[root@VM-0-3-centos
  • 【Docker 系列】docker 學習 二,Docker 的常用命令
    【Docker 系列】docker 學習 二,Docker 的常用命令基本幫助命令# 查看 docker 的基本版本信息docker version# 查看 docker 的系統信息,如鏡像和容器數量docker info# 查看某個命令的幫助docker xx命令 --help
  • 【Docker】基礎命令
    create命令創建一個容器,使用該命令創建的容器處於停止狀態,需要使用docker start命令啟動容器。CREATED         STATUS   PORTS    NAMESddb96bff9de6    ubuntu   "/bin/bash"  10 seconds ago   Created           grave_shaw也可以直接使用docker run命令創建並啟動一個新的容器,等價於執行命令docker create和docker start。
  • docker反向查看啟動命令和dockerfile
    最近發現兩個非常好用的工具,一個是 runlike,一個是 whaler聽起
  • docker基礎命令
    在容器中運行"echo"命令,輸出"hello word"# docker run image_name echo "hello word"  2.在容器中安裝新的程序# docker run image_name yum install -y app_nameNote: 在執行yum 命令的時候,要帶上-y參數。
  • Docker基本概念及部署使用
    以下是Docker容器的總覽,包括基本概念、容器管理、鏡像和倉庫管理、資源管理、容器編排管理、容器監控以及容器使用,本文簡要介紹Docker基本概念、安裝部署以及容器的使用。1、Docker基本概念1.1 容器與虛擬機容器是一種輕量級、可移植、自包含的軟體打包技術,使應用程式幾乎可以在任何地方以相同的方式運行。
  • Docker的基本使用-Ubuntu18.04
    Docker基本使用-CentOS版,請訪問:https://mp.weixin.qq.com/s/lu70ykBZ4yRu1gpNxnbytwDocker能做什麼提供一個虛擬的操作平臺,供我們安裝依賴不同版本系統的工具軟體。
  • 一些重要 Docker 命令的簡單介紹
    拉取 Docker 鏡像由於容器是由 Docker 鏡像構建的,首先我們需要拉取一個 docker 鏡像來開始。我們可以從 Docker Registry Hub 獲取所需的 docker 鏡像。在我們使用 pull 命令拉取任何鏡像之前,為了避免 pull 命令的一些惡意風險,我們需要保護我們的系統。
  • Linux安裝Docker與Docker常用命令
    \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate
  • Docker 常用命令(.NET Core示例)
    前言本篇文章,整理docker中常用的命令,方便大家學習和命令查詢。Docker安裝 Docker運行基本命令docker [--helper]:顯示所有docker命令1、查看容器內部信息docker exec -it [container id or name] bash:在運行的容器中執行bash命令,比如執行ls命令列出目錄或者查看文件。
  • docker常用命令詳解
    [events|history|logs]``從docker命令使用出發,梳理出如下命令結構圖:-Docker環境信息--info命令用於檢測Docker是否正確安裝,一般結合docker version命令使用。
  • Docker鏡像常用命令
    Docker常用命令docker version   --- 查看docker版本信息
  • 快速安裝Docker及配置及Docker配置、Docker常用命令.
    一、安裝docker服務命令行輸入curl -fsSL https://get.docker.com | bash -s docker --mirror
  • Docker命令大全及Dockerfile詳解(附示例)
    apt-transport-https ca-certificates curl software-properties-common # Step 3: 添加 Docker 的官方 GPG 密鑰 curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - # Step
  • Docker簡介、安裝、基本配置
    docker虛擬容器化技術並不是docker,並不等於docker。dockdocument中文教程:http://www.runoob.com/docker/docker-tutorial.htmlDaoCloud:http://www.daocloud.io安裝及基本配置配置詳情請查看Linux部分,除了安裝方式略有所差別,配置都是一樣Windows:Win10 64建議Docker for
  • Docker基本操作
    利用下載的ubuntu-upstart容器,可以運行一個簡單的程序,此處以「Hello Docker」為例:root@jaking-virtual-machine:~# docker run ubuntu-upstart /bin/echo Hello DockerHello Docker還可以使用其他容器
  • Dockerfile 命令介紹及實例
    Dockerfile使用簡單的,清楚的和乾淨的語法結構,極為易於使用。這些語法可以自我釋義,支持注釋。Dockerfile 語法示例Dockerfile語法由兩部分構成,注釋和命令+參數# Line blocks used for commentingcommand argument argument ..