shell自动部署docker及docker-compose

2023-11-14

一、准备环境

        centos7.6及centos7.9已通过测试(测试时服务器刚刚完成初始化,未修改任何配置),可以直接运行脚本进行安装。要求主机可以访问互联网,yum环境在脚本中已自动准备。将两个脚本直接复制放到root目录下,赋予可执行权限,先运行1.sh,等待安装完成后主机自动重启,再运行2.sh即可(脚本安装时间预计5-20分钟,如果中途不小心退出了ssh管理界面,再次进入不需要重新运行脚本,继续等待即可,可以通过查看版本来确认是否成功安装)。

二、脚本信息

        docker1.sh

#!/bin/bash
#在root目录下执行,要求服务器能联网,centos7上测试成功

#更新服务器yum源(备份原yum源、下载阿里yum源、生成缓存、清除不必要提示信息、更新软件源、打印输出提示)
echo "开始准备yum环境!"
sleep 1
echo "准备倒计时 3!"
sleep 1
echo "准备倒计时 2!"
sleep 1
echo "准备倒计时 1!"
yum install wget -y
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
yum update -y
echo "YUM环境准备成功!"

#安装docker(查看docker版本、查看是否已安装docker、安装docker所需依赖、安装docker源、安装docker、启动docker、开机自启动docker)
echo "开始准备docker环境!"
sleep 1
echo "准备倒计时 3!"
sleep 1
echo "准备倒计时 2!"
sleep 1
echo "准备倒计时 1!"
docker version
yum list installed | grep docker
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce-20.10.10-3.el7 docker-ce-cli-20.10.10-3.el7 containerd.io
systemctl start docker
systemctl enable docker
echo "docker安装成功!"

#安装docker-compose(配置阿里epel源、安装python3-pip、升级pip、重启)
echo "开始准备docker-compose环境!"
sleep 1
echo "准备倒计时 3!"
sleep 1
echo "准备倒计时 2!"
sleep 1
echo "准备倒计时 1!"
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install python3-pip -y
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
echo "准备重启 3 "
sleep 1
echo "准备重启 2 "
sleep 1
echo "准备重启 1 "
reboot

2.sh

#!/bin/bash
#在root目录下执行,要求服务器能联网,centos7.9上测试成功

#完善docker-compose(查看pip版本、安装upgrade、pip安装docker-compose、创建软链接、测试是否安装完成)
echo "准备完善docker-compose环境!"
sleep 1
echo "准备倒计时 3!"
sleep 1
echo "准备倒计时 2!"
sleep 1
echo "准备倒计时 1!"
pip --version
pip3 install --upgrade --force pip
pip3 install docker-compose
ln -s /usr/local/python3/bin/docker-compose /usr/bin/docker-compose
echo "docker-compose安装成功!!版本如下:"
echo "$(docker-compose --version)"

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

shell自动部署docker及docker-compose 的相关文章

随机推荐

  • 【PMSM控制】电流环带宽

    带宽的概念 可以理解为是频率 在自控的定义上来说 即是规定3dB衰减或有90 相移作为带宽的评价标准 因为控制系统的性能可以用动态响应和稳态误差来评判 为了便于评判系统性能 从频域来考虑 就是都给100Hz变化的正弦信号 看系统的失真情况
  • 使用computed_VUE中computed计算属性和data数据获取的问题

    获取到数据 对象 数组 截取一部分显示到页面中 用computed计算属性来实现截取数据然后直接输出到页面 div class detailBox h1 class detailHead ActiveData title h1 div cl
  • c语言检测使用方法,一种基于程序切片技术的C语言死代码检测方法与流程

    本发明涉及恶意代码分析领域 主要涉及一种基于程序切片技术的C语言死代码检测方法 背景技术 随着互联网的广泛普及 现今的计算机网络也面临着越来越多的攻击威胁 在众多网络安全问题中 恶意代码所造成的安全危害愈发严重 恶意代码分析成了安全人士关注
  • 机器学习西瓜书——第05章神经网络

    本文是关于周志华老师编写的机器学习书籍 西瓜书 的第五章神经网络 主要的内容有 M P神经元模型的构成 简单感知机和多层网络 以及著名BP算法的推导过程 激活函数是Sigmoid 文章目录 5 1 神经元模型 工作过程 激活函数 5 2 感
  • [Filco]蓝牙连接键盘

    第一次用蓝牙键盘 断连后的重连太痛苦了 蓝牙里搜不到键盘 搜到了PIN码不知道输入什么 不输入PIN码连接 Filco方法 控制面板 设备和打印机 点击 添加设备 搜索到 Filco 点击下一步 尝试从设备输入 对着数字敲 然后Enter就
  • Docker之Alpine制作镜像且上传至阿里云

    Alpine制作jdk镜像 alpine Linux简介 Alpine Linux是一个轻型Linux发行版 它不同于通常的Linux发行版 Alpine采用了musl libc 和 BusyBox以减少系统的体积和运行时的资源消耗 alp
  • 8位深, 16位深,24位深,32位深图片显示原理及对比

    我们都知道一张图片可以保存为很多种不同的格式 比如bmp png jpeg gif等等 这个是从文件格式的角度看 我们抛开文件格式 看图片本身 我们可以分为8位 16位 24位 32位等 单击右键 属性 gt 详细信息即可查看图片位深度 8
  • ijkplayer-android编译 兼容多视频格式

    用的播放器框架是ijkplayer 然后就去https github com Bilibili ijkplayer的issue里找答案发现很多人遇到了这个问题 最终还是想通过编译定制化so的方式解决 践行解决方案 按照官方文档编译andro
  • Mybatis-代码走查问题整理

    实践篇 1 和 的区别 直接替换变量 有sql注入风险 使用场景 当表名 字段名作为变量传入时 PreparedStatement 预处理编译 先替换为 然后赋值 添加单引号 2 使用注解和xml文件sql的方式区别 注解 简单明了 无需额
  • Doris之Binlog Load

    Binlog Load Binlog Load提供了一种使Doris增量同步用户在Mysql数据库的对数据更新操作的CDC Change Data Capture 功能 适用场景 INSERT UPDATE DELETE支持 过滤Query
  • Qt6教程之三(3) QtWedget自定义控件

    在之前的博客中 我们使用的控件都是Qt官方提供的 对于控件的特性也只能被动地接受 为了打破这种束缚 可以按照自己的想法来定义控件 不过自定义控件必须遵守Qt官方的一套自定义控件规则 在规则之下我们就可以定义属于我们自己的控件啦 QWidge
  • 输出比较实验

    转载链接 输出比较 输出比较就是通过定时器的外部引脚对外输出控制信号 输出比较的模式有哪些 可以设置为以下几种不同的模式 翻译如下 000 冻结 输出比较寄存器TIMx CCR1中的内容与计数器TIMx CNT中的内容之间的比较对输出无影响
  • jquery ajax 无效字符,【JQuery】 ajax 无效的JSON基元

    如题 个人理解就是 你向传数据 josn格式 了 但是后台接受确不是json格式的 数据 贴段代码 var strJson usercode 123 password 123 ajax type POST url Index doLogin
  • CentOS7下安装 mysql5.7.25(glibc版)(可用)

    一 安装前的检查 1 检查 linux 系统版本 root localhost cat etc system release 2 检查是否安装了 mysql mysql 有三种安装方式 二进制包安装 RPM包安装 源码装 3 系统内存检查
  • c++的cout输出

    1 c 的cout输出顺序是从左往右进行输出 但是是从右往左压入栈 2 c 的cout的输出是遇到函数是若函数内右cout的操作则立即执行 3 不同编译器对相同语句的编译规则是不一样的 所以最好不要对同一变量进行多次的修改 也不用深究 没有
  • go语言如何编译为可执行文件

    使用系统自带的cmd找到main函数所在位置 1 go build go即可把go程序编译成exe文件 2 go run go就可以运行go程序了 3 便宜源代码 官方说使用go build fileName 编译出来的就直接带有调试信息了
  • bash: ifconfig: 未找到命令 解决方案

    解决思路 1 ifconfig 命令存在的情况 首先查看 ifconfig 命令在哪个目录下 顺便检查是否安装了这个命令 whereis ifconfig 然后查看 echo PATH PATH 中是否包含了这个目录 一般情况下是不包含的
  • 前端开发都需要掌握那些技术?

    前端技术多且杂 那么作为前端开发者 我们可以从那些方面进行进阶提升呢 本文从以下几个方面进行了整理归纳 内容如下 一 网页开发 二 小程序 三 移动端 四 桌面端 五 其他技术 一 网页开发 这里指PC端网页开发 要求的技术主要有以下几类
  • 华为OD机试(JAVA)真题 -- 最长(连续)子串

    import java util Scanner 给定一个字符串 只包含字母和数字 按要求找出字符串中的最长 连续 子串 字符串本身是其最长的子串 子串要求 只包含 1 个字母 a z A Z 其余必须是数字 字母可以在子串中的任意位置 如
  • shell自动部署docker及docker-compose

    一 准备环境 centos7 6及centos7 9已通过测试 测试时服务器刚刚完成初始化 未修改任何配置 可以直接运行脚本进行安装 要求主机可以访问互联网 yum环境在脚本中已自动准备 将两个脚本直接复制放到root目录下 赋予可执行权限