Docker系列03-容器Docker鏡像的使用

Docker鏡像的使用

前兩個章節,介紹了容器的相關基礎知識,這章我們介紹鏡像的簡單使用,鏡像hub裏面有來自於全世界貢獻的各種鏡像,包括一些入門和學習練手的鏡像,今天我們使用的正式其中一個用於學習練習的鏡像(https://github.com/docker-training/webapp)

 

下載啓動容器


#先把鏡像pull下來
docker pull training/webapp

#查看當前鏡像列表
docker images

#可以看到我們剛纔下載的webapp
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
training/webapp     latest              6fae60ef3446        4 years ago         349MB

#運行webapp實例
#-d是後臺運行
#-P是實例網絡映射到本機,因爲這個webapp是會監聽tcp端口,加上這個參數容器裏面的監聽tcp端口跟本機的tcp端口,這樣我們就直接在本機訪問對應的端口就可以跟容器實例監聽的端口建立連接
docker run -d -P training/webapp python app.py

#查看運行實例情況
docker ps -a

#返回信息
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
5da522ffe229        training/webapp     "python app.py"     2 minutes ago       Up 2 minutes        0.0.0.0:1024->5000/tcp   laughing_pike

#從返回的信息可以看到,容器裏面監聽的5000端口映射到本機的1024端口,我們試試訪問本機的1024端口看看
curl http://127.0.0.1:1024/

#返回
Hello world!

 

進入容器環境

上面的例子是在外部訪問容器,我們試試進入容器環境裏面看看具體情況。


#查看當前在運行的容器實例列表
docker ps -a

#返回信息
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
5da522ffe229        training/webapp     "python app.py"     8 minutes ago       Up 8 minutes        0.0.0.0:1024->5000/tcp   laughing_pike

#我們要進入的容器實例ID是 5da522ffe229
#使用exec命令,同時運行bash,-it是交互命令終端
docker exec -it 5da522ffe229 /bin/bash

#運行之後,我們會發現,命令行終端已經發生變化,進入了實例 5da522ffe229 裏面
root@5da522ffe229:/opt/webapp#

#運行一下netstat看看監聽情況
netstat -lnp

#看到了,我們之前運行的webapp監聽了5000的內部端口
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:5000            0.0.0.0:*               LISTEN      - 
              
#我們試着運行訪問5000端口,提示 bash: curl: command not found
#因爲我們進入了容器的隔離環境,還沒有裝curl
curl http://127.0.0.1:5000/

#我們先安裝curl
apt-get update; apt install -y curl

#安裝成功之後,再運行
curl http://127.0.0.1:5000/

#這次可以成功返回信息
Hello world!

#退出當前容器環境,命令行提示又回到本機了
ctrl+d

 

其他使用功能


#查看指定容器實例的log日誌
docker logs -f 5da522ffe229

#查看指定容器實例的top
docker top 5da522ffe229

#查看指定容器的端口信息
docker port 5da522ffe229

#查看指定容器的配置信息
docker inspect 5da522ffe229

 

在這裏插入圖片描述
睿江雲官網鏈接:https://www.eflycloud.com/home?from=RJ0036

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章