1. 程式人生 > 其它 >docker入門之安裝及使用

docker入門之安裝及使用

一 註冊docker賬號

  https://hub.docker.com/ 請註冊賬號及郵箱啟用

二 安裝

  注意:docker只支援linux系統,經排查windows安裝的docker原理基本都是通過虛擬機器

  我用的ubuntu20.0虛擬機器

sudo apt update

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

  就是這麼簡單!

  接下來驗證安裝是否成功:

wbw@ubuntu:~$ docker -v
Docker version 20.10.7, build f0df350

wbw@ubuntu:
~$ sudo systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2021-06-24 20:03:46 PDT; 7h ago

三 啟動並使用

  3.1搜尋容器

sudo docker search ubuntu

  3.2 拉取容器

sudo docker pull ubuntu

  3.3 執行容器

docker run -it ubuntu
    加 -it 的目的是可以讓你通過shell來操作他們。如果不加則是簡單的把映象放到容器並啟動

進入shell後我們就可以在容器中進行操作了,比如在該ubuntu容器中新增apache伺服器等,此處不做演示了。
(注意:ubuntu初始容器一般需要先apt update
/ upgrade一下)

  3.4 退出容器

//shell中直接exit
exit

四 管理

  4.1容器列表

//活動中的容器

sudo docker ps

//非活動中的容器

sudo docker ps -a

//最新建立的容器

sudo docker ps 
-l //是字母l (latest)不是數字1

  4.2啟動容器

sudo docker start epic_aryabhata //docker start+容器id/容器名稱 同時注意與docker run的區別

  4.3停止正在執行的容器

sudo docker stop epic_aryabhata //docker stop+容器id/容器名稱

  4.4刪除容器

sudo docker rm epic_aryabhata //docker rm+容器id/容器名稱

五 docker倉庫

  5.1commit容器

sudo docker commit -m 'start' -a "ansirw" epic_aryabhata study/ubuntu
    此時用docker images命令可以看到我們多了一個repostry

  5.2 本機登入hub

sudo docker login -u ansirw
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

  5.3 修改tag

sudo docker tag study/ubuntu ansirw/ubuntu

  5.4 遠端提交

sudo docker push ansirw/ubuntu

六 補充

  6.1docker run和start的區別

  • docker run contain_name 只在第一次執行時使用,將映象放到容器中,以後再次啟動這個容器時,只需要使用命令docker start 即可。相當於執行了兩步操作:將映象放入容器中(docker create),然後將容器啟動,使之變成執行時容器(docker start)。
  • docker start contain_name 的作用是,重新啟動已存在的映象。也就是說,如果使用這個命令,我們必須事先知道這個容器的ID,或者這個容器的名字,我們可以使用docker ps找到這個容器的資訊。

  6.2 進入容器

    我們不能每一次都docker run -it,因為每一次的執行都會在本地拉取一個映象容器。

    實際上我們這樣操作:

wbw@ubuntu:~$ sudo docker start epic_aryabhata
epic_aryabhata
wbw@ubuntu:~$ sudo docker exec -it epic_aryabhata /bin/bash
root@be15c13a58ca:/# ls
bin dev home lib32 libx32 mnt proc run srv tmp var
boot etc lib lib64 media opt root sbin sys usr
root@be15c13a58ca:/#

    就這些了,希望大家相互學習,共同進步!