docker 學習筆記

2021-10-02 06:01:22 字數 2880 閱讀 5724

一、什麼是docker?

docker 是乙個開源的應用容器引擎,基於 go 語言 並遵從 apache2.0 協議開源。

docker 可以讓開發者打包他們的應用以及依賴包到乙個輕量級、可移植的容器中,然後發布到任何流行的 linux 機器上,也可以實現虛擬化。

二、安裝docker

curl  -o /etc/yum.repos.d/docker-ce.repo
2. 安裝依賴

yum install
3. 安裝docker-ce

yum install docker-ce
4. 啟動docker

systemctl start docker
三、docker 映象加速

在 /etc/docker/daemon.json 中寫入如下內容(如果檔案不存在請新建該檔案):

之後重新啟動服務:

$ sudo systemctl daemon-reload

$ sudo systemctl restart docker

四、docker 常用命令

1、docker run -i -t tomcat:latest /bin/bash   執行互動式的容器
各個引數解析:

-t:在新容器內指定乙個偽終端或終端。

-i:允許你對容器內的標準輸入 (stdin) 進行互動。

2、docker run -d -p 8080:8080 tomcat    啟動容器(後台模式)

-d 建立乙個以後臺程序方式執行的容器

3、docker ps  檢視docker 容器程序

4、docker stopid  停止容器程序

5、docker pull 映象名   獲取映象

6、docker ps -a  檢視所有容器程序

7、docker start b750bbbcfd88  啟動乙個已停止的容器

8、後台執行

在大部分的場景下,我們希望 docker 的服務是在後台執行的,我們可以過 -d 指定容器的執行模式

9、docker stop 《容器 id> 停止容器

10、docker restart 《容器 id> 重啟容器

11、進入容器

在使用-d引數時,容器啟動後會進入後台。此時想要進入容器,可以通過以下指令進入:

docker attach

docker exec:推薦大家使用 docker exec 命令,因為此退出容器終端,不會導致容器的停止。

12、docker exec -it 243c32535da7 /bin/bash  進入容器

13、docker rm -f 1e560fca3906  刪除容器

14、docker port可以檢視指定 (id 或者名字)容器的某個確定埠對映到宿主機的埠號。

15、docker images來列出本地主機上的映象

16、映象刪除使用docker rmi命令

17、構建映象

我們使用命令docker build, 從零開始來建立乙個新的映象。為此,我們需要建立乙個 dockerfile 檔案,其中包含一組指令來告訴 docker 如何構建我們的映象。

runoob@runoob:~$ cat dockerfile 

from centos:6.7

maintainer fisher "[email protected]"

run /bin/echo 'root:123456' |chpasswd

run useradd runoob

run /bin/echo 'runoob:123456' |chpasswd

run /bin/echo -e "lang=\"en_us.utf-8\"" >/etc/default/local

expose 22

expose 80

cmd /usr/sbin/sshd -d

每乙個指令都會在映象上建立乙個新的層,每乙個指令的字首都必須是大寫的。

第一條from,指定使用哪個映象源

run 指令告訴docker 在映象內執行命令,安裝了什麼。。。

然後,我們使用 dockerfile 檔案,通過 docker build 命令來構建乙個映象。

runoob@runoob:~$ docker build -t runoob/centos:6.7 .

sending build context to docker daemon 17.92 kb

step 1 : from centos:6.7

---> d95b5ca17cc3

step 2 : maintainer fisher "[email protected]"

---> using cache

---> 0c92299c6f03

step 3 : run /bin/echo 'root:123456' |chpasswd

---> using cache

---> 0397ce2fbd0a

step 4 : run useradd runoob

......

引數說明:

docker學習筆記

1 docker依賴於linux核心,無法直接安裝在windows環境中,否則需要安裝docker toolbox 2 相關操作 docker create 建立乙個容器但是不啟動它 docker run 建立並啟動乙個容器 docker stop id 停止容器執行,傳送訊號sigterm doc...

Docker學習筆記

一 docker是什麼 docker是乙個開源的引擎,可以輕鬆的為任何應用建立乙個輕量級的 可移植的 自給自足的容器。就相當於書包可以裝書,水杯可以盛水。二 docker解決了什麼問題 我本地沒有問題啊 本地和線上的環境不一致問題,哪個哥們又寫死迴圈了 其他專案的出錯不影響你本身的專案 雙十一伺服器...

docker學習筆記

1.怎麼給執行中的docker容器新增新的埠 解決 1 獲得容器ip docker inspect container name grep ipaddress 2 iptable埠 將容器的8000埠對映到主機的8001埠 iptables tnat adocker ptcp dport 8001 ...