centos搭建部署docker环境的详细步骤

 更新时间:2022年07月12日 14:44:46   作者:@每天都要敲代码  
Docker 将程序与程序的运行环境打包在一起,从而避免了复杂的环境配置,下面这篇文章主要给大家介绍了关于centos搭建部署docker环境的详细步骤,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

1、Docker的存在解决的问题

1.1 统一标准

应用构建:我们写的应用可能使用了不同的编程语言,例如:Java、C++、JavaScript等,这些应用最终打成软件包,有的是压缩包、有的是文件夹、有的是源程序让自己编译,这就很麻烦;那么能否统一打成一个包?这就需要docker build,把我们的软件打成一个标准格式的包,这个包就叫做镜像!

应用分享:所有软件的镜像都放到一个指定地方 docker hub(就相当于安卓手机里的应用市场)。

应用运行:我们都打包成了统一标准的镜像(相当于Windows里的可执行程序.exe);直接docker run就可以启动应用。

Docker的存在开启了一个时代,一个容器化的时代!

区别于容器化,以前我们有一个虚拟化技术:假如有一个8核64G的应用,我们跑很多的应用,所有的应用都放到一个机器里面;如果一个软件造成内存泄漏,就可能把整个64G内存全部占完,造成其它应用就挤下去运行不了了!为了安全,所以我们要把这些应用进行隔离:

(1)第一种办法:虚拟化技术;装几个虚拟机,假如每个虚拟机占8个G,每个虚拟机里布置各自的应用,就算有一个应用造成了内存泄漏,也只会漏掉8个G,不会影响别人!但是虚拟化技术也有很多缺点:基础镜像都是GB级别、创建使用复杂、启动速度慢、移植与分享不方便;

(2)第二种办法:容器化技术;一个服务器装了操作系统,对于虚拟机化技术实际上每个虚拟机又是一个完整的操作系统;对于容器化技术,既然有操作系统了,docker就是搞一些差异化的东西保存起来,所以每个应用的环境只是区别于当前服务器的一个差异化环境;优点:基础镜像MB级别、创建简单、隔离性强、启动速度秒级、移植与分享方便;

1.2 资源隔离

(1)cpu、内存资源隔离与限制;

(2)访问设备隔离与限制;

(3)网络隔离与限制;

(4)用户、用户组隔离限制;容器里跑的应用的root用户,跟Linux主机里的root用户,可以不是同一个root用户

........................

2、Docker的建构

1、Docker_Host:

        想用Docker,每台主机必须安装Docker;安装Docker的主机,即为Docker_Host

2、Docker Daemon

        安装好Docker就会在主机上启动,后台启动一个Docker的进程;运行在Docker主机上的Docker后台进程

3、Client

        操作Docker主机的客户端(命令行、UI等)

4、Registry

        镜像仓库:Docker Hub

5、Images

        镜像,带环境打包好的程序,可以直接启动运行

6、Containers

        容器,由镜像启动起来正在运行中的程序

总结:想要用docker,先装好Docker;然后去 软件市场 (docker hub)寻找镜像下载(docker pull)镜像并运行(docker run);

3、安装Docker

Docker官方部署Docker平台的底层Linux操作系统对应的Linux内核版本至少3.8+,在实际的企业生产环境中,推荐的Linux内核至少3.10+,对应的Linux操作系统发型版本:Centos7.x或者Ubuntu16.x;

cat /etc/centos-release  # 查看当前Centos的版本
uname -a #查看当前内核的版本

Docker安装的官方文档:https://docs.docker.com/engine/install/centos/

1、卸载以前安装的docker

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
# 如果以前什么都没安装,直接yum remove docker*就可以

2、配置yun源

 yum install -y yum-utils # 下载yum工具类所需要的依赖
 yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 添加docker安装源地址

3、安装docker

 yum install -y docker-ce docker-ce-cli containerd.io # 安装最新版本得docker
# docker-ce---docker社区版
# docker-ce-cli---操作docker服务器的命令行程序
# containerd.io---docker容器化的运行环境
 
# 如果想要安装其他版本
yum list | grep docker # 查看一下docker资源的安装列表

4、启动docker并设置为开机自启

systemctl start docker --now
systemctl enable docker 

5、查看一下当前的docker运行状态

systemctl status docker

6、随便使用一个命令验证

docker info # 打印docker的详细信息

7、配置镜像加速

mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF
systemctl daemon-reload 
systemctl restart docker

然后输入:docker ps能打印出来内容就说明没问题!

总结

到此这篇关于centos搭建部署docker环境的文章就介绍到这了,更多相关centos搭建docker环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 一步步详解如何在Ubuntu 18.04上安装Docker

    一步步详解如何在Ubuntu 18.04上安装Docker

    Docker是基于Go语言实现的云开源项目,下面这篇文章主要给大家介绍了关于如何在Ubuntu 18.04上安装Docker的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • Docker动态添加端口不需要重新建立镜像的方法

    Docker动态添加端口不需要重新建立镜像的方法

    Docker容器在运行期间有时可能会需要修改或者添加暴露的端口,但是有时候运行的容器又不想再另外建立一个新的镜像。接下来通过本文给大家分享Docker动态添加端口不需要重新建立镜像的方法,感兴趣的朋友一起看看吧
    2019-07-07
  • Docker制作镜像的完整过程

    Docker制作镜像的完整过程

    本文主要介绍了Docker制作镜像的完整过程,以制作CentOS镜像为例,讲述对镜像自定义,打包以及推送的远程仓库的过程,感兴趣的可以了解一下
    2021-11-11
  • docker image删不掉的解决办法

    docker image删不掉的解决办法

    在使用Docker的时候遇到删不掉image的情况,怎么回事,如何解决呢?下面小编给大家分享下docker image删不掉的解决办法,需要的朋友参考下吧
    2017-01-01
  • 详解docker API管理接口增加CA安全认证

    详解docker API管理接口增加CA安全认证

    这篇文章主要介绍了docker API管理接口增加CA安全认证,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • docker启动Java程序的方法步骤

    docker启动Java程序的方法步骤

    这篇文章主要介绍了docker启动Java程序的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • docker中搭建overlay 网络实验环境

    docker中搭建overlay 网络实验环境

    这篇文章主要介绍了docker中搭建overlay 网络实验环境的相关资料,需要的朋友可以参考下
    2017-08-08
  • Docker中控制服务启动顺序的操作方法

    Docker中控制服务启动顺序的操作方法

    Docker是一种开源的应用容器引擎,允许开发者将应用及其依赖打包进容器,实现快速、一致的部署,Docker三剑客compose、machine和swarm提供了不同层面的服务管理和编排,使得在不同环境中部署应用变得简单高效
    2024-10-10
  • 详解Docker容器跨主机通信的方法

    详解Docker容器跨主机通信的方法

    本篇文章主要介绍了详解Docker容器跨主机通信的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • docker容器中安装vim问题解决

    docker容器中安装vim问题解决

    本文主要介绍了docker容器中安装vim问题解决,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08

最新评论