shell脚本一键部署docker的实现步骤

 更新时间:2024年03月07日 09:37:26   作者:SKY慕雪  
作为一名经验丰富的开发者,我们经常需要使用Docker来快速部署各种应用,本文主要介绍了shell脚本一键部署docker的实现步骤,具有一定的参考价值,感兴趣的可以了解一下

Docker介绍

Docker 是一个开源的平台,用于开发、交付和运行应用程序。它利用容器化技术,可以帮助开发人员更轻松地打包应用程序及其依赖项,并将其部署到任何环境中,无论是开发工作站、数据中心还是云中。以下是 Docker 的一些关键特点和优势:

轻量级:Docker 容器利用操作系统级虚拟化技术,使得应用程序可以在隔离的环境中运行,同时不会占用过多的系统资源。这使得容器相对于传统虚拟机更加轻量级。

可移植性:Docker 容器提供了一致的运行时环境,无论是在开发环境、测试环境还是生产环境,都可以确保应用程序的行为一致性。

快速部署:由于容器镜像可以快速启动和停止,因此可以大大缩短应用程序的部署时间,同时也有利于快速扩展和收缩应用程序的实例数量。

灵活性:Docker 提供了丰富的命令行工具和 API,可以方便地进行容器的创建、启动、停止、删除等操作,同时也支持与其他工具集成,如 Kubernetes、Jenkins 等。

环境一致性:通过 Docker 容器,可以确保开发、测试和生产环境之间的一致性,避免了“在我的机器上可以运行”的问题。

资源隔离:Docker 容器可以提供良好的资源隔离,使得不同的应用程序可以在同一台主机上运行而不会相互干扰。

总的来说,Docker 的出现极大地简化了应用程序的开发、交付和运行流程,促进了 DevOps 文化的普及,并且在云计算和容器编排领域具有重要意义。

编写shell脚本

#创建sh文件,将内容复制进去
[root@localhost ~]# vi docker.sh

#赋予执行权限
[root@localhost ~]# chmod 777 docker.sh

#执行脚本
[root@localhost ~]# ./docker.sh
#/bin/bash

echo "----------yum-----------"
cat >> /etc/yum.repos.d/local.repo << EOF
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
EOF

mkdir /opt/centos
mount /dev/sr0 /mnt
cp -rvf /mnt/* /opt/centos
umount /mnt

curl -o /etc/yum.repos.d/CentOS.Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

yum clean all && yum repolist

echo "---------yum-OK---------------"



echo "-----------gcc,  gcc-c++---------"
yum install -y gcc gcc-c++
echo "--------------OK-----------------"

echo "----------yum-utils...-----------"
yum install -y yum-utils device-mapper-persistent-data lvm2
echo "------------OK-------------------"



echo "---------docker-aliyun---------------"
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
echo "---------docker-aliyun-OK!------"

echo "----------yum-jiasu-------"
yum makecache
echo "-------------OK!----------"

echo "**********docker install ***********"
yum install -y docker-ce docker-ce-cli containerd.io
echo "**********docker install-OK!!********"

echo "******************stop firewalld************************"
systemctl stop firewalld
systemctl disable firewalld
echo "******************firewalld-stop-OK!!!!*********************"

echo "**********start docker**************"
systemctl start docker
systemctl enable docker

echo "************start OK!!!!************"
docker --version

到此这篇关于shell脚本一键部署docker的实现步骤的文章就介绍到这了,更多相关shell一键部署docker内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • linux下怎么解压.tar.gz .tar.bz2命令

    linux下怎么解压.tar.gz .tar.bz2命令

    这篇文章主要介绍了linux下解压.tar.gz .tar.bz2命令的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-12-12
  • Linux 中(加、减、乘、除)实例详解

    Linux 中(加、减、乘、除)实例详解

    这篇文章主要介绍了 Linux 中(加、减、乘、除)实例详解的相关资料,需要的朋友可以参考下
    2017-05-05
  • shell遍历目录处理特定目录的脚本代码

    shell遍历目录处理特定目录的脚本代码

    删除文件,目录结构为:ip/年份/月份,每个人都有一份这样的目录现需要删除2012年以前的所有文件,2012年以后的删除特定月份
    2013-02-02
  • linux命令行批量创建目录详解

    linux命令行批量创建目录详解

    这篇文章主要介绍了linux命令行批量创建目录详解的相关资料,需要的朋友可以参考下
    2017-04-04
  • 判断文件是否存在的shell脚本代码

    判断文件是否存在的shell脚本代码

    判断文件是否存在的shell脚本,有详细的注释,很不错,有需要的朋友不妨参考下
    2013-02-02
  • Shell编程之case语句实战(小结)

    Shell编程之case语句实战(小结)

    这篇文章主要介绍了Shell编程之case语句实战(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • Shell脚本实现简单分割字符串

    Shell脚本实现简单分割字符串

    这篇文章主要介绍了Shell脚本实现简单分割字符串,本文讲解使用CUT命令实现以逗号、分号或其它分隔符来切割字符串,需要的朋友可以参考下
    2015-02-02
  • shell中exit 0和exit 1的区别有哪些

    shell中exit 0和exit 1的区别有哪些

    exit1和exit是shell中的两个命令,用于退出当前的shell进程,本文就来介绍一下shell中exit 0和exit 1有哪些区别,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • Shell编程指南

    Shell编程指南

    这里汇总了一下关于shell编程的相关知识点,由简入深,非常的不错,这里推荐给大家
    2014-12-12
  • Linux 打包压缩命令详解

    Linux 打包压缩命令详解

    在Linux系统中,有多种命令可以用于打包和压缩文件,这些命令可以帮助用户将多个文件或目录打包成一个文件,并可以选择不同的压缩算法来减小文件大小,下面给大家介绍Linux 打包压缩命令详解,感兴趣的朋友一起看看吧
    2023-09-09

最新评论