暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

docker容器入门介绍

程序员杨叔 2022-12-30
139


大家好,我是杨叔。每周进步一点点,关注我的微信公众号【程序员杨叔】,获取更多测试开发技术知识!
上周杨叔也羊了,导致周的文章了~。这周恢复了不少,所以开始继续给大家分享新的内容。


docker作为目前最流行的虚拟化容器技术,类似于轻量级的虚拟机,是能快速实现微服务分布式部署的核心所在。作为测试同学,不管日常工作中,还是面试时,熟悉docker都是必不可少的一项技能需要。


因此本文给大家分享docker容器入门介绍,如果本文对你有帮助,麻烦点一点在看+点赞+分享,你的支持就是作者更新最大的动力~


一、什么是docker容器



容器(Container)是基于镜像创建的运行实例,一个容器中可以运行一个或多个应用程序(jdk+开发的java应用程序)。

Docker可以帮助你构建和部署容器,你只需要把自己的应用程序或者服务打包放进容器即可。

我们可以认为,镜像是Docker生命周期中的构建或者打包阶段,而容器则是启动或者执行阶段。可以理解容器中有包含:一个精简版的Linux环境 + 要运行的应用程序


二、为什么要容器化



  • Build once,Run anywhere(构建一次,到处运行):
    Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上。

  • 可以进行快速地扩容。


三、Docker 容器架构




Docker客户端向Docker服务器发出请求,使用远程API来管理和创建Docker容器:

  • 镜像(Image):镜像是Docker中的一个模板。通过 Docker镜像 来创建 Docker容器,一个镜像可以创建出多个容器。镜像是由一系列指令一步一步构建出来

  • 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

  • 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。


四、docker安装启动



Docker 支持CentOS 7及更高版本的 64 位 CentOS 版本。如果之前已经安装过docker,可以使用以下命令卸载:

sudo yum remove docker \
                 docker-client \
                 docker-client-latest \
                 docker-common \
                 docker-latest \
                 docker-latest-logrotate \
                 docker-logrotate \
                 docker-engine

1、安装 yum-utils 程序,命令yum install -y yum-utils:

sudo yum install -y yum-utils

2、设置docker镜像仓库,官方仓库比较慢,建议使用阿里镜像仓库:

    yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo


    3、安装docker-ce,社区免费版:

    sudo yum install docker-ce docker-ce-cli containerd.io



    看到上面内容代表docker已经安装成功了。

    4、启动docker:

    先关闭防火墙,避免docker端口被防火墙拦截:

      # 关闭
      systemctl stop firewalld
      # 禁止开机启动防火墙
      systemctl disable firewalld

      启动docker:

      sudo systemctl start docker

      5、测试hello world:

        #验证 docker 是否安装成功并在容器中执行一个测试的镜像
        sudo docker run hello-world


        五、拉取镜像示例



        1、拉取mysql镜像

          #要下载指定版本在mysql后面跟:版本号, 不加版本号表示默认下载的最新版本
          docker pull mysql:5.7

          2、查看是否已安装好mysql镜像:

          docker images

          3、启动mysql:

          docker run -id --name=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
          • -id 创建启动并在后台运行程序

          • -it 创建启动并进入容器

          • -p 端口映射宿主机端口: 容器端口

          • -e 代表添加环境变量

          4、进入容器并访问 MySQL 服务

            #进入容器内部
            docker exec -it mysql bin/bash
              #进入
              mysqlmysql -h localhost -u root -p
                #使用mysql
                use mysql


                六、docker常用命令汇总



                  # 搜索镜像
                  1.docker search 镜像名称    
                  # 列出docker下的已安装所有镜像
                  2.docker images
                  # 拉取镜像                                      
                  3. docker pull 镜像名:标签名                      
                  # 删除镜像
                  4.docker rmi 镜像id
                  # 查看正在运行的容器
                  5.docker ps
                  # 查看所有容器
                  6.docker ps -a
                  # 通过镜像创建容器
                  7.docker run 镜像名:标签名
                  # 进入容器
                  8.docker exec -it 容器名称|容器id bin/bash
                    exit:退出容器不停止容器
                  # 启动容器
                  9.docker start 容器名称|容器id1
                  # 停止容器
                  10.docker stop 容器名称|容器id1
                  # 删除容器
                  11.docker rm 容器名称|容器id


                  END




                  以上就是本次的全部内容,如果对你有帮助,麻烦点一点在看+点赞+分享,你的支持就是作者更新最大的动力~

                  最后,欢迎加入杨叔的测试交流群,沟通交流日常测试工作相关内容,三个臭皮匠赛过诸葛亮,2022一起抱团取暖,学习进步!可扫码添加杨叔的微信号,备注:进群

                  往期精彩文章推荐




                  MySQL常用语句汇总-看这一篇就够了

                  每个IT技术人必备的“知识点日历”来了!

                  各类值得收藏的开源项目推荐介绍

                  注解都看不懂,你行不行啊,细狗!

                  Redis缓存知识-穿透、击穿、雪崩

                  文章转载自程序员杨叔,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                  评论