Ubuntu下使用Docker映象和容器的基本方法

2021-10-01 15:27:18 字數 4263 閱讀 7763

驗證docker

開始使用

docker命令的補充拓展

docker 檔案掛載

docker網路機制

參照**:

1.由於apt官方庫里的docker版本可能比較舊,所以先解除安裝可能存在的舊版本:

sudo

apt-get remove docker docker-engine docker-ce docker.io

2.更新apt包索引:

sudo

apt-get update

3.安裝以下包以使apt可以通過https使用儲存庫(repository):

4.新增docker官方的gpg金鑰:

curl -fssl  |

sudo apt-key add -

5 .使用下面的命令來設定stable儲存庫:

sudo add-apt-repository "deb [arch=amd64]  $(lsb_release -cs)

stable"

6 .再更新一下apt包索引:

sudo

apt-get update

7.安裝最新版本的docker ce:

sudo

apt-get

install -y docker-ce

8 在生產系統上,可能會需要應該安裝乙個特定版本的docker ce,而不是總是使用最新版本:

列出可用的版本:

選擇要安裝的特定版本,第二列是版本字串,第三列是儲存庫名稱,它指示包來自哪個儲存庫,以及擴充套件它的穩定性級別。要安裝乙個特定的版本,將版本字串附加到包名中,並通過等號(=)分隔它們:

sudo

apt-get

install docker-ce=

1.檢視docker服務是否啟動:

systemctl status docker
若未啟動,則啟動docker服務:

sudo systemctl start docker
3.經典的hello world:

有以上輸出則證明docker已安裝成功!

在使用的時候,首先需要使用docker基於乙個已有的映象來新建容器進行操作,這裡是基於ubuntu映象來新建容器。這裡會建立乙個ubuntu作業系統的主機容器,類似於乙個虛擬機器來使用。

常用docker命令:

sudo docker images ##檢視當前本地可用映象

sudo docker ps

##檢視正在執行的容器id

sudo docker ps -a ##檢視建立的所有的容器id,包括正在執行,和停止的

sudo docker pull ubuntu
sudo docker images#檢視本地映象。
sudo docker run -i -t -d -p 8888:8888 ubuntu /bin/bash
這句表示在後台基於ubuntu映象新建乙個容器,-d表示將容器放後台執行,-p表示本機與容器之間的埠對映,需要對映多個埠的時候需要使用多個-p指令,例如:

sudo docker run -i -t -d -p 8888:8888 -p 8890:8890 ubuntu /bin/bash

sudo docker run -i -t -d -p 8888-8890:8888-8890 ubuntu /bin/bash ##連續埠可用符號「-」連線

執行上句新建容器之後,容器是放在後台執行的,所以使用sudo docker ps可看到正在執行的容器的id,想要進入該容器進行其他安裝配置操作的話,執行以下命令:

sudo docker ps

##獲取想要進去的容器的id

sudo docker exec -it 容器id /bin/bash

進去容器後就可以正常操作了,使用exit命令可以退出容器,可以使用

uname -m &&

cat /etc/*release

來檢視當前系統的詳細資訊。

當一切配置好後,需要將當前容器上傳至映象儲存的時候執行以下命令:

sudo docker commit -m "added ubuntu" -a "cqy" befc2a019cdf images/change3
用來儲存映象,注意後面的名字用路徑的方式比較好區分但是開頭不要加斜槓/。第乙個引號裡面的是該映象的描述,第二個是建立該映象的使用者,id就是使用sudo docker ps -a檢視到的要儲存的容器的id,最後面是儲存的新映象的名稱。

儲存好後,輸入sudo docker images可以看到剛剛儲存的映象images/change3,以後使用該映象時也是如上述使用方法那樣使用run -d來後台新建容器,然後使用exec來進入容器進行操作。

在自己伺服器中編寫**hello.py,執行下面**,利用docker環境執行python**

docker run -it -

-rm -

-name 容器名 -v "$pwd"

:

引數宣告:

val=

input()

print

(val)

不帶-i會報錯

1.後台執行的容器使用以下命令終止:

sudo docker stop 容器id
首先使用sudo docker ps檢視後台執行的容器id2.可使用以下命令刪除指定映象,或者全部映象:

docker rmi 映象名#刪除指定的映象

docker rmi `docker images -a -q`

刪除本地所有的映象

3.往docker生成的容器裡傳輸檔案需要首先用ftp協議將檔案傳輸到本地,然後再通過以下docker命令將檔案傳輸到容器裡:

sudo docker ps

##檢視容器的容器名,

假設為cranky_wescoff

sudo docker inspect -f '}' cranky_wescoff ##獲取容器的完整id

sudo docker cp helloworld.js 容器完整id:/home/cqy/test ##將當前目錄的js檔案複製到容器下的/home/cqy/test目錄下。

** docker的映象和容器在/var/lib/docker/路徑下,但是沒有許可權檢視**

docker支援將宿主機上得目錄掛在到映象裡。

docker run -it -v /home/dock:/usr ubuntu /bin/bash

引數-v 冒號前為宿主機目錄,必須為絕對路徑,冒號後為映象內掛載的路徑,現在映象就可以共享宿主機裡的檔案了。

預設掛載的路徑許可權為讀寫,也可以指定為唯讀可以用:ro

docker run -it -v /home/dock:/usr:ro ubuntu /bin/bash

Ubuntu下使用docker配置nginx

配置步驟 1 建立web容器 docker run p 80 name web i t ubuntu bin bash2 更新軟體源 apt get updateapt get install nginx4 安裝vim apt get install vim5 建立目錄 mkdir p var ww...

ubuntu下使用Docker安裝kafka

首先拉取zookeeper kafka映象 docker pull wurstmeister zookeeper docker pull wurstmeister kafka啟動zookeeper docker run d name zookeeper restart always publish ...

docker 使用ubuntu 系統

1 安裝ubuntu系統命令 docker pull ubuntu 這是乙個極度精簡的系統,連最基本的wget命令都沒有 所以先要apt get update公升級系統和安裝apt get install wget命令 2 執行進入ubuntu系統命令 docker run ti ubuntu ba...