容器的基本操作,拉去官方鏡像,創(chuàng)建,終端操作容器,執(zhí)行命令

上一節(jié)我們使用了第三方做好的容器,直接使用阿里云的鏡像拉取過來,運行了一個php的網(wǎng)站
接下來學習下容器的基本操作
使用官方的鏡像(生產環(huán)境肯定要使用自己定制的鏡像 可以使用官方的純凈的鏡像加入自己的一些配置)也就是自己制作的鏡像
下面首先看下官方的鏡像
我們使用centos作為我們的操作系統(tǒng)

image.png

來到這個網(wǎng)站 輸入centos下載個官方純凈的centos鏡像
image.png

點擊查看詳情 可以復制鏡像地址
xshell中執(zhí)行如下
image.png

查看下載的鏡像 docker images
image.png

我們可以基于下載的純凈的centos創(chuàng)建一個容器
下面看下以這種方式創(chuàng)建的鏡像如何啟動呢
image.png

docker run命令 可以把我們的鏡像放在容器里運行
在我們啟動容器之前 只要運行一次就可以了 第二次不需要再run了
docker run并不表示啟動容器 而是操作鏡像 把鏡像放到docker中 產生一個容器
接下來看下docker run命令的一些參數(shù) 前節(jié)課我們學了 -d 后臺運行 -p映射端口
這節(jié)課我們使用的是純凈的鏡像 里面不包含apache和php等 所以這節(jié)課我們使用交互式這種操作方式來操作下這個鏡像
交互式 使用參數(shù)-i 打開stdin(標準輸入)用于和我們的容器進行交互 一般與-t聯(lián)合使用
-t表示為容器創(chuàng)建虛擬終端,我們就可以登錄終端了 通常與-i同時使用
這些命令可以通過在xshell中 如下命令 docker run --help
image.png

可以結合文檔看具體的含義
接下來在xshell中執(zhí)行如下
image.png

自動變?yōu)閞oot 后面跟隋個 /
表示進入了剛才的容器(centos)
使用ls查看下容器里面的內容
image.png

執(zhí)行pwd 輸出/ 表示在根目錄下 這就是官方給我們創(chuàng)建的操作系統(tǒng)(centos)
image.png

ctrl+d退出該容器
執(zhí)行ctrl+d 輸出如下
image.png

執(zhí)行docker ps
image.png

可以發(fā)現(xiàn)新創(chuàng)建的centos容器并沒有在運行
執(zhí)行docker ps -a
image.png

可以發(fā)現(xiàn)centos容器存在 只不過按下ctrl+d關閉了容器
接下來啟動下
docker start myos1(容器名)
image.png

再次執(zhí)行 docker ps
可以看見當前正在運行的容器
image.png

如何再次進入容器?
image.png

通過docker attache命令 可以附加到容器終端中
執(zhí)行docker attach myos1
image.png

可以發(fā)現(xiàn)再次進入到容器中了
按下ctrl+d再次推出容器
docker ps
image.png

可以發(fā)現(xiàn)容器再次被關閉了
這些命令可以在官方文檔https://docs.docker.com/engine/reference/commandline/run/看見
接下來我們對上面的命令加入一些參數(shù)
image.png

xshell中打入如下命令
image.png

發(fā)現(xiàn)再次進入容器了
-a表示打開容器的輸出流
image.png

ctrl+d退出容器 docker ps可以發(fā)現(xiàn)容器又停止了 這是它的一個特性
接下來學習一個新命令
image.png

接下來xshell中輸入
docker start myos1
docker attach myos1
image.png

其中在啟動的容器交互式命令中執(zhí)行
echo bhc > test 表示在創(chuàng)建test文件夾 在里面寫入bhc
cat test 表示把test文件中內容打印到屏幕上
接下來執(zhí)行如下
image.png

又關閉了容器
接下來再次啟動myos1
docker start myos1
執(zhí)行
docker exec myos1 cat test
輸出bhc
image.png

可以看見文件已經(jīng)存在我們的容器里了(并沒有被刪掉)
其中exec表示執(zhí)行某些命令
這時再次輸入 docker ps
輸出如下
image.png

可以發(fā)現(xiàn)容器沒有被關閉
我們可以直接啟動容器里的exec去運行容器里的/bin/bash 我們就可以在不關閉容器的情況下去操作這個容器
接下來操作下
image.png

發(fā)現(xiàn)再次進入容器
image.png

退出后再次docker ps
image.png

可以發(fā)現(xiàn)容器并沒有被關閉
這是exec命令 讓我們可以方便的操作容器而且這個容器不會被退出

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容