docker基础入门一:docker安装&镜像下载&根据镜像创建容器

一、安装准备:

#卸载旧的版本:

yum list installed |grep docker

yum -y remove  ...

#卸载后将保留/var/lib/docker的内容(镜像、容器等)。

Rm  -rf   /var/lib/docker

1、安装依赖软件包

yum  install   -y yum-tuils device-mapper-persistent-data  lvm2

 

docker基础入门一:docker安装&镜像下载&根据镜像创建容器

#安装前检查 device-mapper-persistent-data  lvm2两个工具是否已经安装:

Rpm  -qa|grep   device-mapper-persistent-data

Rpm  -qa|grep   lvm2

 

docker基础入门一:docker安装&镜像下载&根据镜像创建容器

2、设置yum源:

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

 

3、更新yum软件包索引:

Yum  makecache fast

 

二、开始安装docker:

以下步骤,在虚拟机中安装docker 引擎,是docker仓库、镜像、容器运行的载体;

#安装的时候如果不指定版本,则默认取最新的版本:

1、安装最新版本的docker-ce

      yum   install  docker-ce -y

2、也可以指定版本安装:

    #安装指定版本docker-ce可以使用如下命令先查看:

    yum list docker-ce.x86_64  --showduplicates|sort -r

   #安装指定版本:

   yum -y install  docker-ce-18.06.0.ce-3.el7 

 

3、安装完成之后可以查看使用命令查看

     docker  version

 

     docker基础入门一:docker安装&镜像下载&根据镜像创建容器

三、下载镜像:

1、配置镜像加速

      可以使用阿里云的免费镜像加速服务,也可以使用其他如时速云、网易云等,这里举例以阿里云为例:

      1)注册登录开通阿里云容器镜像服务

      2)查看控制台,找到镜像加速器并复制自己的加速器地址

          docker基础入门一:docker安装&镜像下载&根据镜像创建容器

 

      3)找到/etc/docker目录下的daemon.json文件,没有则直接新建daemon.json,加入以下配置:

       #填写自己的加速器地址

     {

          “registry-mirrors”:[“https//zfzbet67.mirror.aliyuncs.com”]

     }

    4)通知systemd重新加载配置文件:

        Systemctl  daemon-reload

    5)重启docker服务:

        Systemctl   restart  docker

 

四、docker实战:

1、下载TOMCAT:

       默认版本安装

      docker基础入门一:docker安装&镜像下载&根据镜像创建容器

 

 2、查看Tomcat的镜像信息:

      docker基础入门一:docker安装&镜像下载&根据镜像创建容器

 

      #tomcat:后面不带版本,表示查看最新的镜像版本

      docker image inspect  tomcat

"docker image inspect" requires at least 1 argument.

See 'docker image inspect --help'.

 

Usage:  docker image inspect [OPTIONS] IMAGE [IMAGE...]

 

Display detailed information on one or more images

[[email protected] docker]# docker image inspect tomcat

[

    {

        "Id": "sha256:882487b8be1d58ec8471a74344492b3ec013aa5867b095e6efee26bc1d6c6a71",

        "RepoTags": [

            "tomcat:latest"

        ],

        "RepoDigests": [

            "[email protected]:77e41dbdf7854f03b9a933510e8852c99d836d42ae85cba4b3bc04e8710dc0f7"

        ],

        "Parent": "",

        "Comment": "",

        "Created": "2019-10-19T02:26:07.016458705Z",

        "Container": "97ec4db7558e28b8af0054f4765f62bc14cab8f8b09e283591cffd7b30514681",

        "ContainerConfig": {

            "Hostname": "97ec4db7558e",

            "Domainname": "",

            "User": "",

            "AttachStdin": false,

            "AttachStdout": false,

            "AttachStderr": false,

            "ExposedPorts": {

                "8080/tcp": {}

            },

            "Tty": false,

            "OpenStdin": false,

            "StdinOnce": false,

            "Env": [

                "PATH=/usr/local/tomcat/bin:/usr/local/openjdk-8/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",

                "LANG=C.UTF-8",

                "JAVA_HOME=/usr/local/openjdk-8",

                "JAVA_VERSION=8u232",

                "JAVA_BASE_URL=https://github.com/AdoptOpenJDK/openjdk8-upstream-binaries/releases/download/jdk8u232-b09/OpenJDK8U-jdk_",

                "JAVA_URL_VERSION=8u232b09",

                "CATALINA_HOME=/usr/local/tomcat",

                "TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib",

                "LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib",

                "GPG_KEYS=05AB33110949707C93A279E3D3EFE6B686867BA6 07E48665A34DCAFAE522E5E6266191C37C037D42 47309207D818FFD8DCD3F83F1931D684307A10A5 541FBE7D8F78B25E055DDEE13C370389288584E7 61B832AC2F1C5A90F0F9B00A1C506407564C17A3 713DA88BE50911535FE716F5208B0AB1D63011C7 79F7026C690BAA50B92CD8B66A3AD3F4F22C4FED 9BA44C2621385CB966EBA586F72C284D731FABEE A27677289986DB50844682F8ACB77FC2E86E29AC A9C5DF4D22E99998D9875A5110C01C5A2F6059E7 DCFD35E0BF8CA7344752DE8B6FB21E8933C60243 F3A04C595DB5B6A5F1ECA43E3B7BBB100D811BBE F7DA48BB64BCB84ECBA7EE6935CD23C10D498E23",

                "TOMCAT_MAJOR=8",

                "TOMCAT_VERSION=8.5.47",

                "TOMCAT_SHA512=079b85f3dfca2b137634859208fae6012860201d720d12ff0add3473f1e267d332cb12803958754e1f922599e0d42b7e97f00bcd62584d9148a6f45fde091716"

            ],

            "Cmd": [

                "/bin/sh",

                "-c",

                "#(nop) ",

                "CMD [\"catalina.sh\" \"run\"]"

            ],

            "ArgsEscaped": true,

            "Image": "sha256:7ba2e40d851ce0e312aa9297c61e1b8b37df77c7151439149339fe5270d8b360",

            "Volumes": null,

            "WorkingDir": "/usr/local/tomcat",

            "Entrypoint": null,

            "OnBuild": null,

            "Labels": {}

        },

        "DockerVersion": "18.06.1-ce",

        "Author": "",

        "Config": {

            "Hostname": "",

            "Domainname": "",

            "User": "",

            "AttachStdin": false,

            "AttachStdout": false,

            "AttachStderr": false,

            "ExposedPorts": {

                "8080/tcp": {}

            },

            "Tty": false,

            "OpenStdin": false,

            "StdinOnce": false,

            "Env": [

                "PATH=/usr/local/tomcat/bin:/usr/local/openjdk-8/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",

                "LANG=C.UTF-8",

                "JAVA_HOME=/usr/local/openjdk-8",

                "JAVA_VERSION=8u232",

                "JAVA_BASE_URL=https://github.com/AdoptOpenJDK/openjdk8-upstream-binaries/releases/download/jdk8u232-b09/OpenJDK8U-jdk_",

                "JAVA_URL_VERSION=8u232b09",

                "CATALINA_HOME=/usr/local/tomcat",

                "TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib",

                "LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib",

                "GPG_KEYS=05AB33110949707C93A279E3D3EFE6B686867BA6 07E48665A34DCAFAE522E5E6266191C37C037D42 47309207D818FFD8DCD3F83F1931D684307A10A5 541FBE7D8F78B25E055DDEE13C370389288584E7 61B832AC2F1C5A90F0F9B00A1C506407564C17A3 713DA88BE50911535FE716F5208B0AB1D63011C7 79F7026C690BAA50B92CD8B66A3AD3F4F22C4FED 9BA44C2621385CB966EBA586F72C284D731FABEE A27677289986DB50844682F8ACB77FC2E86E29AC A9C5DF4D22E99998D9875A5110C01C5A2F6059E7 DCFD35E0BF8CA7344752DE8B6FB21E8933C60243 F3A04C595DB5B6A5F1ECA43E3B7BBB100D811BBE F7DA48BB64BCB84ECBA7EE6935CD23C10D498E23",

                "TOMCAT_MAJOR=8",

                "TOMCAT_VERSION=8.5.47",

                "TOMCAT_SHA512=079b85f3dfca2b137634859208fae6012860201d720d12ff0add3473f1e267d332cb12803958754e1f922599e0d42b7e97f00bcd62584d9148a6f45fde091716"

            ],

            "Cmd": [

                "catalina.sh",

                "run"

            ],

            "ArgsEscaped": true,

            "Image": "sha256:7ba2e40d851ce0e312aa9297c61e1b8b37df77c7151439149339fe5270d8b360",

            "Volumes": null,

            "WorkingDir": "/usr/local/tomcat",

            "Entrypoint": null,

            "OnBuild": null,

            "Labels": null

        },

        "Architecture": "amd64",

        "Os": "linux",

        "Size": 506788828,

        "VirtualSize": 506788828,

        "GraphDriver": {

            "Data": {

                "LowerDir": "/var/lib/docker/overlay2/59e4860917e23781052f16479482f4267128a8fedcf61579bcab9a0aab042679/diff:/var/lib/docker/overlay2/0dfb379c398d8de0421f470c4033ac32dfbd32699b1ca6fda60fab4155d00a94/diff:/var/lib/docker/overlay2/087e800f7f7c955c16414103995c32f8d52f3e2eeffefc4d649f90c4d6290ba4/diff:/var/lib/docker/overlay2/e9f90f17e41d23b2380f487fda64252483abbeb2f91ef9ea6036464e818f8f93/diff:/var/lib/docker/overlay2/8077612ed6f8269c929e473646ee08e7987f69ef8515e7b573e4c98ee56cdb0f/diff:/var/lib/docker/overlay2/37efe8676bf2c18be3dd0fc3325b64fb2aa64e246e92d05772051bff8bfc01e7/diff:/var/lib/docker/overlay2/fbe7c58eec04d2fa06282ec0c258b98201348623a8295ecee75b058e28282677/diff:/var/lib/docker/overlay2/27884551416cf40ee9e2e80dfa98b3b06dee829ced6b6c771a5e3652494651c8/diff:/var/lib/docker/overlay2/1fd32522764b8ff691a5ce11ed71e3b5b547d6379901a3138f61475b8ba9cf05/diff",

                "MergedDir": "/var/lib/docker/overlay2/789f69c09e4d8c6cfa65f50a3e1a15f32c6a0fd4464139fbf444a7e08be80af5/merged",

                "UpperDir": "/var/lib/docker/overlay2/789f69c09e4d8c6cfa65f50a3e1a15f32c6a0fd4464139fbf444a7e08be80af5/diff",

                "WorkDir": "/var/lib/docker/overlay2/789f69c09e4d8c6cfa65f50a3e1a15f32c6a0fd4464139fbf444a7e08be80af5/work"

            },

            "Name": "overlay2"

        },

        "RootFS": {

            "Type": "layers",

            "Layers": [

                "sha256:97041f29baff775daa9b4f608c11db724fbe406c6478f69721a85df4006ef7c0",

                "sha256:2f77733e9824e18b358f20bd33ad569f21e3136c2a22ef502c15b627be3c9f5e",

                "sha256:687890749166493fb9958058143592c3aadf73b6f914f1b15093e8108d47dcd8",

                "sha256:b8f8aeff56a83bdb007111d2a746c5819d592c6c0a0ddbd4d2e60f5ed5d71dea",

                "sha256:7e3c900343d08f51118c48e0a7ca914c5532681e345078ef4a222ff2898f7a3a",

                "sha256:99557920a7c54f7f15f397a839132ef74fcf6e60e5659d6f14f4f10dbef2060f",

                "sha256:a8902d6047fea645ed2d9e425a947c9f6ffa6ffce6c1df9860a243813a7830ed",

                "sha256:08579474bb30b0a954f88b0b38ab1ba35f23336d263831ec03abec2fa126b0d1",

                "sha256:38d8d468142ff79377f2c73224ee4326ebc2563c87ba1f6f7ee4a4cd8563e84f",

                "sha256:65e5e74a1404f2ee7ddf07d48b51544ec38c8e2bb8094e346b48b0ab71522ad7"

            ]

        },

        "Metadata": {

            "LastTagTime": "0001-01-01T00:00:00Z"

        }

    }

]

 

 

3、启动Tomcat容器:

#-p 80:8080  开发应用的端口  前面为宿主机的端口,后面的端口为容器的端口

#Tomcat:后面不加版本,默认启动最新的版本,如果需要制定版本,需要制定版本标签。

#docker run --name  tom -d -p 80:8080 tomcat  /XX/XX/*.sh  可以增加一个shell脚本

docker run --name  tom -d -p 80:8080 tomcat

 

docker基础入门一:docker安装&镜像下载&根据镜像创建容器

docker  container  ps

#查看启动的容器

 

docker基础入门一:docker安装&镜像下载&根据镜像创建容器

#检查tomcat是否已经启动:

docker基础入门一:docker安装&镜像下载&根据镜像创建容器

 

#windows下访问

docker基础入门一:docker安装&镜像下载&根据镜像创建容器