docker安裝,配置,部署,

OS version:Ubuntu18.04

Docker version:19.03.1

至於Docker的介紹,小編不再這裏介紹,網上的太多了。直接上狗糧……

安裝

更新系統索引

sudo apt-get update

安裝必要軟件

sudo apt-get install  apt-transport-https  ca-certificates curl  software-properties-common

添加docker官方源

curl -fsSL  https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add
sudo add-apt-repository "deb [arch=amd64]  https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

再次更新系統索引

sudo apt-get update

安裝Docker CE

sudo apt-get install docker-ce

安裝成功

rock@rockpc:~$ docker version
Client: Docker Engine - Community
 Version:           19.03.1
 API version:       1.40
 Go version:        go1.12.5
 Git commit:        74b1e89
 Built:             Thu Jul 25 21:21:05 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.1
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.5
  Git commit:       74b1e89
  Built:            Thu Jul 25 21:19:41 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.6
  GitCommit:        894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc:
  Version:          1.0.0-rc8
  GitCommit:        425e105d5a03fabd737a126ad93d62a9eeede87f
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

HelloWorld嘗試Docker

測試運行

docker run ubuntu:17.10 /bin/echo "Hello world"

#輸出
Unable to find image 'ubuntu:17.10' locally
17.10: Pulling from library/ubuntu
4ccdce43d1e0: Pull complete 
c95f13c88d92: Pull complete 
82656eee95ad: Pull complete 
78ff727be57a: Pull complete 
448bb314afa5: Pull complete 
Digest: sha256:3b811ac794645dfaa47408f4333ac6e433858ff16908965c68f63d5d315acf94
Status: Downloaded newer image for ubuntu:17.10
Hello world

後臺運行

docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
6244b89c3312        ubuntu:17.10        "/bin/sh -c 'while t…"   55 seconds ago      Up 53 seconds                           trusting_kepler
docker logs 6244b89c3312
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world

停止

docker stop 6244b89c3312

命令解析

  • 進入容器命令行

-t:在新容器內指定一個僞終端或終端。

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

docker run -i -t ubuntu:17.10 /bin/bash
  • 進入後臺運行

-d:後臺運行

docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
  • 查看正在運行的容器
docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
5af8d6b0426a        ubuntu:17.10        "/bin/sh -c 'while t…"   4 seconds ago       Up 3 seconds                            xenodochial_bardeen
  • 查看全部容器包括停止運行的容器

CONTAINER ID:容器ID

IMAGE:鏡像名

COMMAND:容器啓動命令

CREATED:容器創建時間

STATUS:容器狀態,運行時間、退出的時間等等

PORTS:容器對外綁定的端口

NAMES:容器名

docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                           PORTS               NAMES
0baa6bc3f79d        training/webapp     "python app.py"          3 minutes ago       Exited (137) 2 minutes ago                           runoob
3d59f2e1390f        training/webapp     "python app.py"          10 minutes ago      Exited (137) 3 minutes ago                           loving_kalam
5af8d6b0426a        ubuntu:17.10        "/bin/sh -c 'while t…"   About an hour ago   Exited (137) About an hour ago                       xenodochial_bardeen
6244b89c3312        ubuntu:17.10        "/bin/sh -c 'while t…"   About an hour ago   Exited (137) About an hour ago                       trusting_kepler
1139fe69cdf6        ubuntu:17.10        "/bin/echo 'Hello wo…"   About an hour ago   Exited (0) About an hour ago                         nice_shaw
25f5a2fbbf3a        ubuntu:15.10        "/bin/bash"              3 hours ago         Exited (100) 3 hours ago                             hopeful_dirac
00eccc6884c6        ubuntu:15.10        "/bin/bash"              3 hours ago         Exited (0) 3 hours ago                               reverent_engelbart
d72a2e237059        training/webapp     "python app.py"          4 hours ago         Exited (137) 4 hours ago                             silly_chatterjee
f1c56e0413d5        training/webapp     "python app.py"          5 hours ago         Exited (137) 4 hours ago                             blissful_cannon
cccdabfd79cd        training/webapp     "python app.py"          5 hours ago         Exited (137) 5 hours ago                             dreamy_carson
  • 停止容器
docker stop 5af8d6b0426a
5af8d6b0426a
  • 刪除容器

這裏的容器ID需要已經停止的容器

docker rm 2f2eb5fcad95

#批量刪除已停止的容器ID
docker rm $(docker ps -qf status=exited)
或者
docker container prune

  • 公有容器查詢

NAME:鏡像倉庫源的名稱

DESCRIPTION:鏡像的描述

STARS:鏡像收藏數

OFFICIAL:是否docker官方發佈

AUTOMATED:是否爲自動化構建的鏡像,關於自動化構建,可以查看官方文檔:https://docs.docker.com/docker-hub/builds/#how-automated-builds-work

docker search tomcat
NAME                          DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
tomcat                        Apache Tomcat is an open source implementati…   2477                [OK]                
tomee                         Apache TomEE is an all-Apache Java EE certif…   66                  [OK]                
dordoka/tomcat                Ubuntu 14.04, Oracle JDK 8 and Tomcat 8 base…   53                                      [OK]
bitnami/tomcat                Bitnami Tomcat Docker Image                     29                                      [OK]
kubeguide/tomcat-app          Tomcat image for Chapter 1                      26                                      
consol/tomcat-7.0             Tomcat 7.0.57, 8080, "admin/admin"              16                                      [OK]
cloudesire/tomcat             Tomcat server, 6/7/8                            15                                      [OK]
tutum/tomcat                  Base docker image to run a Tomcat applicatio…   11                                      
aallam/tomcat-mysql           Debian, Oracle JDK, Tomcat & MySQL              11                                      [OK]
arm32v7/tomcat                Apache Tomcat is an open source implementati…   6                                       
rightctrl/tomcat              CentOS , Oracle Java, tomcat application ssl…   5                                       [OK]
maluuba/tomcat7-java8         Tomcat7 with java8.                             3                                       
arm64v8/tomcat                Apache Tomcat is an open source implementati…   2                                       
amd64/tomcat                  Apache Tomcat is an open source implementati…   2                                       
ppc64le/tomcat                Apache Tomcat is an open source implementati…   1                                       
99taxis/tomcat7               Tomcat7                                         1                                       [OK]
camptocamp/tomcat-logback     Docker image for tomcat with logback integra…   1                                       [OK]
i386/tomcat                   Apache Tomcat is an open source implementati…   1                                       
s390x/tomcat                  Apache Tomcat is an open source implementati…   0                                       
secoresearch/tomcat-varnish   Tomcat and Varnish 5.0                          0                                       [OK]
picoded/tomcat7               tomcat7 with jre8 and MANAGER_USER / MANAGER…   0                                       [OK]
oobsri/tomcat8                Testing CI Jobs with different names.           0                                       
cfje/tomcat-resource          Tomcat Concourse Resource                       0                                       
jelastic/tomcat               An image of the Tomcat Java application serv…   0                                       
appsvc/tomcat                                                                 0                                      
  • 根據容器創建鏡像
#查看當前運行容器
docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
1ea62f2281d3        ubuntu:17.10        "/bin/bash"         27 seconds ago      Exited (0) 10 seconds ago                       adoring_ptolemy

#根據運行容器創建新鏡像
docker commit -m="update date" -a="rockjiang" 1ea62f2281d3 rock/ubuntu:17.10
sha256:432454879d474523b9257c0114ccb637e7b55188ed737517c254d1d3c5da2692

#查看本機鏡像列表
docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
rock/ubuntu         17.10               432454879d47        7 seconds ago       100MB
ubuntu              17.10               e211a66937c6        12 months ago       100MB
ubuntu              15.10               9b9cb95443b5        3 years ago         137MB
training/webapp     latest              6fae60ef3446        4 years ago         349MB

未完。待續。。。。。。

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